PAT-B 1029 舊鍵盤【字串】
PAT-B 1029 舊鍵盤
https://pintia.cn/problem-sets/994805260223102976/problems/994805292322111488
題目
舊鍵盤上壞了幾個鍵,於是在敲一段文字的時候,對應的字元就不會出現。現在給出應該輸入的一段文字、以及實際被輸入的文字,請你列出肯定壞掉的那些鍵。
輸入
輸入在 2 行中分別給出應該輸入的文字、以及實際被輸入的文字。每段文字是不超過 80 個字元的串,由字母 A-Z(包括大、小寫)、數字 0-9、以及下劃線 _
(代表空格)組成。題目保證 2 個字串均非空。
輸出
按照發現順序,在一行中輸出壞掉的鍵。其中英文字母只輸出大寫,每個壞鍵只輸出一次。題目保證至少有 1 個壞鍵。
樣例輸入
7_This_is_a_test
_hs_s_a_es
樣例輸出
7TI
分析
先將兩個字串的小寫字母換成大寫,然後統計各個字元出現的次數,如果兩個字串的字元ch的數量不同,則ch對應的鍵壞掉了。
C++程式
#include<iostream>
#include<cstring>
using namespace std;
int a[200],b[200];
char s1[85],s2[85];
bool flag[200];//flag[i]記錄字元i是否輸出過
int main()
{
scanf("%s %s",s1,s2);
for(int i=0;i<strlen(s1);i++)
{
s1[i]=toupper(s1[i]);
a[s1[i]]++;
}
for(int i=0;i<strlen(s2);i++)
{
s2[i]=toupper(s2[i]);
b[s2[i]]++;
}
for(int i=0;i<strlen(s1);i++)
if(a[s1[i]]!=b[s1[i]]&&!flag[s1[i]])
{
putchar(s1[i]);
flag[s1[i]]=true;//標記字元s1[i]已經輸出
}
putchar('\n');
return 0;
}
相關文章
- PAT-B 1033 舊鍵盤打字【字串】字串
- PAT1029 舊鍵盤(java實現)Java
- 演算法學習之路|舊鍵盤打字演算法
- PAT1033 舊鍵盤打字(java實現)Java
- PAT-B 1048 數字加密【字串】加密字串
- js字串以鍵盤打字方式輸出:JS字串
- PAT-B 1078 字串壓縮與解壓【字串】字串
- PAT-B 1093 字串A+B 【集合】字串
- PAT-B 1031 查驗身份證 【字串】字串
- PAT-B 1009 說反話【字串】字串
- 老舊筆記本改造成便攜KVM(鍵盤顯示器)筆記
- PAT-B 1024 科學計數法【模擬+字串】字串
- PAT-B 1003 我要通過!【規律+字串】字串
- 鍵盤事件事件
- 鍵盤操作
- 鍵盤亂鍵怎麼處理 電腦鍵盤按鍵錯亂
- AutoTyper for Mac(鍵盤快捷鍵)Mac
- PAT-B 1079 延遲的迴文數【字串+大數加法】字串
- PAT-B 1014 福爾摩斯的約會 【字串+細節】字串
- PAT-B 1002 寫出這個數 【字串+遞迴列印】字串遞迴
- Swift開發---UITextView通過鍵盤Return回收鍵盤SwiftUITextView
- android自定義鍵盤 自定義身份證鍵盤Android
- 鍵盤快捷鍵工具:AutoTyper for MacMac
- 滑鼠、鍵盤事件事件
- jquery 控制鍵盤jQuery
- 自制鍵盤(一)
- 機械鍵盤怎麼選購?機械鍵盤和普通鍵盤的區別對比
- 鍵盤失靈按什麼鍵恢復 win10鍵盤恢復按鍵Win10
- iOS安全攻防(八):鍵盤快取與安全鍵盤iOS快取
- 鍵盤怎麼調節燈光模式 鍵盤調燈光是哪個鍵模式
- 鍵盤各個鍵的功能圖解 電腦鍵盤全圖詳細圖解
- win10在哪設定鍵盤快捷鍵_win10怎麼改鍵盤快捷鍵Win10
- Karabiner Elements for Mac鍵盤改鍵工具Mac
- Qt 介面獲取鍵盤Enter鍵QT
- 1029 C語言文法C語言
- 盤點:QuickTime Player 鍵盤快捷鍵和手勢大全UI
- 鍵盤快捷鍵使用大全表圖片 電腦鍵盤的快捷鍵用法大全圖解圖解
- 艾爾登法環鍵盤操作介紹 艾爾登法環鍵盤按鍵方式說明