演算法學習之路|舊鍵盤打字
舊鍵盤上壞了幾個鍵,於是在敲一段文字的時候,對應的字元就不會出現。現在給出應該輸入的一段文字、以及壞掉的那些鍵,打出的結果文字會是怎樣?
輸入格式:
輸入在2行中分別給出壞掉的那些鍵、以及應該輸入的文字。其中對應英文字母的壞鍵以大寫給出;每段文字是不超過105個字元的串。可用的字元包括字母[a-z, A-Z]、數字0-9、以及下劃線“_”(代表空格)、“,”、“.”、“-”、“+”(代表上檔鍵)。題目保證第2行輸入的文字串非空。
注意:如果上檔鍵壞掉了,那麼大寫的英文字母無法被打出。
輸出格式:
在一行中輸出能夠被打出的結果文字。如果沒有一個字元能被打出,則輸出空行。
輸入樣例:
7+IE.
7_This_is_a_test.
輸出樣例:
_hs_s_a_tst
我的思路:
很簡單,首先記錄那些壞的鍵,記錄到string中
然後根據string中的限制,判斷能否輸出即可。
注意:
要特殊對待上檔鍵。
大小不區分。
程式碼如下:
#include<iostream>
using namespace std;
int flag=0;
bool cancout(string limit,char ch){//判斷是否能夠輸出
for(int i=0;i<limit.size();i++){
if(toupper(limit[i])==toupper(ch)){
return 0;
}
else if(limit[i]==`+`&&(ch>=`A`&&ch<=`Z`))
return 0;
}
flag++;
return 1;
}
int main(){
string limit,all;
cin>>limit>>all;
for(int i=0;i<all.size();i++){
if(cancout(limit, all[i])==1)//傳入每一個將要打出的字
cout<<all[i];
}
}
相關文章
- PAT-B 1033 舊鍵盤打字【字串】字串
- canvas鍵盤打字練習功能Canvas
- PAT1033 舊鍵盤打字(java實現)Java
- 演算法學習之路|棋盤問題(博弈)演算法
- js字串以鍵盤打字方式輸出:JS字串
- 演算法學習之路|划拳演算法
- Nanoxia Ncore Retro機械鍵盤:這復古鍵盤打起字來像打字機NaN
- 全鍵盤Vimium快捷鍵學習記錄
- 演算法學習之路|A除以B演算法
- 演算法學習之路|列印排名演算法
- 演算法學習之路|方格分割演算法
- 演算法學習之路|朋友數演算法
- 演算法學習之路|SpellItRight演算法
- 演算法學習之路|歐幾里得遊戲演算法遊戲
- 演算法學習之路|月餅演算法
- 演算法學習之路|PATRanking演算法
- 演算法學習之路|列印沙漏演算法
- 演算法學習之路|快速排序演算法排序
- 演算法學習之路|結繩演算法
- 演算法學習之路|數零壹演算法
- 演算法學習之路|開學寄語演算法
- PAT-B 1029 舊鍵盤【字串】字串
- 演算法學習之路|說反話演算法
- 演算法學習之路|幼兒園買玩具演算法
- 演算法學習之路|小賭怡情演算法
- 演算法學習之路|影像過濾演算法
- 演算法學習之路|日期問題演算法
- 演算法學習之路|賣個萌演算法
- 演算法學習之路|螺旋矩陣演算法矩陣
- 演算法學習之路|選擇題演算法
- 演算法學習之路|字元統計演算法字元
- 演算法學習之路|科學計數法演算法
- 與 Linux 一起學習:學習打字Linux
- 鍵盤裝置執行正常卻不能打字如何解決 鍵盤全沒反應了按什麼鍵
- PAT1029 舊鍵盤(java實現)Java
- 機械鍵盤什麼軸好 機械鍵盤追求手感打字玩遊戲該選什麼軸遊戲
- tickeys 1.0.0 中文版 (鍵盤打字音效模擬工具)
- 演算法學習之路|PlayOnWords(尤拉道路+dfs)演算法