PAT Basic 1076
阿新 • • 發佈:2018-08-14
name 選項 輸入 分享 esp 一道 編號 lis mage
1076 Wifi密碼
下面是微博上流傳的一張照片:“各位親愛的同學們,鑒於大家有時需要使用 wifi,又怕耽誤親們的學習,現將 wifi 密碼設置為下列數學題答案:A-1;B-2;C-3;D-4;請同學們自己作答,每兩日一換。謝謝合作!!~”—— 老師們為了促進學生學習也是拼了…… 本題就要求你寫程序把一系列題目的答案按照卷子上給出的對應關系翻譯成 wifi 的密碼。這裏簡單假設每道選擇題都有 4 個選項,有且只有 1 個正確答案。
輸入格式:
輸入第一行給出一個正整數 N(≤ 100),隨後 N 行,每行按照 編號-答案
的格式給出一道題的 4 個選項,T
表示正確選項,F
表示錯誤選項。選項間用空格分隔。
輸出格式:
在一行中輸出 wifi 密碼。
輸入樣例:
8
A-T B-F C-F D-F
C-T B-F A-F D-F
A-F D-F C-F B-T
B-T A-F C-F D-F
B-F D-T A-F C-F
A-T C-F B-F D-F
D-T B-F C-F A-F
C-T A-F B-F D-F
輸出樣例:
13224143
題解:這道題因為每一行中T出現的位置只可能有四個,所以直接枚舉法即可得出答案。
代碼如下:
1 #include<iostream> 2 #include<string> 3 4 using namespace std;5 6 int main() 7 { 8 string a,b; 9 int n; 10 scanf("%d",&n); 11 getchar(); 12 while(n--){ 13 getline(cin,a); 14 if(a[2] == ‘T‘){ 15 b += ((a[0] - ‘A‘ + 1) + ‘0‘); 16 continue; 17 } 18 else if( a[6] == ‘T‘){ 19 b += ( (a[4] - ‘A‘ + 1) + ‘0‘); 20 } 21 else if( a[10] == ‘T‘){ 22 b += ( (a[8] - ‘A‘ + 1) + ‘0‘); 23 } 24 else if( a[14] == ‘T‘){ 25 b += ( (a[12] - ‘A‘ + 1) + ‘0‘); 26 } 27 } 28 cout<<b; 29 return 0; 30 }
PAT Basic 1076