舊鍵盤上壞了幾個鍵,於是在敲一段文字的時候,對應的字元就不會出現。現在給出應該輸入的一段文字、以及壞掉的那些鍵,打出的結果文字會是怎樣?
輸入格式:
輸入在 2 行中分別給出壞掉的那些鍵、以及應該輸入的文字。其中對應英文本母的壞鍵以大寫給出;每段文字是不超過 105個字元的串。可用的字元包括字母 [a-z, a-z]、數字 0-9、以及下劃線 _(代表空格)、,、.、-、+(代表上檔鍵)。題目保證第 2 行輸入的文字串非空。
注意:如果上檔鍵壞掉了,那麼大寫的英文本母無法被打出。
輸出格式:
在一行中輸出能夠被打出的結果文字。如果沒有乙個字元能被打出,則輸出空行。
輸入樣例:
7+ie.輸出樣例:7_this_is_a_test.
_hs_s_a_tst利用陣列能夠快速隨機訪問的特點,建立乙個大於ascii字元最大值的陣列標記壞鍵。
查詢輸入陣列時,若為大寫,檢視『+』(shift)鍵是否損壞,若為小寫,轉化為大寫,比對壞鍵陣列。
針對s1可能出現空串問題,使用getline輸入該行。
#include
using
namespace std;
intmain()
;for
(int i=
0;ilength()
;i++
)c[s1[i]]=
1;//記錄壞鍵
for(
int i=
0;ilength()
;i++)if
(temp<=
'z'&& temp >=
'a') temp = temp -
'a'+
'a';if(
!c[temp]
) cout << s2[i];}
return0;
}
PAT 乙級 1033 舊鍵盤打字
舊鍵盤上壞了幾個鍵,於是在敲一段文字的時候,對應的字元就不會出現。現在給出應該輸入的一段文字 以及壞掉的那些鍵,打出的結果文字會是怎樣?輸入格式 輸入在2行中分別給出壞掉的那些鍵 以及應該輸入的文字。其中對應英文本母的壞鍵以大寫給出 每段文字是不超過105個字元的串。可用的字元包括字母 a z,a ...
PAT乙級1033舊鍵盤打字
雖然本題沒啥難度,但是有幾個注意點 1.預處理字元1,判斷是否存在 2.再次處理,由於字母只有大寫形式,只要出現大寫字母,就將其bool陣列中的該字母大小寫都設為true 3.出現小寫字母直接用bool陣列判斷即可,大寫字母判斷 是否存在以及bool陣列 4.其他字元,遍歷字元1,若不存在直接輸出即...
舊鍵盤打字 PAT乙級1033
描述 舊鍵盤上壞了幾個鍵,於是在敲一段文字的時候,對應的字元就不會出現。現在給出應該輸入的一段文字 以及壞掉的那些鍵,打出的結果文字會是怎樣?輸入格式 輸入在 2 行中分別給出壞掉的那些鍵 以及應該輸入的文字。其中對應英文本母的壞鍵以大寫給出 每段文字是不超過 10 5個字元的串。可用的字元包括字母...