1033. 舊鍵盤打字

1033. 舊鍵盤打字(20)

時間限制
200 ms
內存限制
65536 kB
代碼長度限制
8000 B
判題程序
Standard
做者
CHEN, Yue

舊鍵盤上壞了幾個鍵,因而在敲一段文字的時候,對應的字符就不會出現。如今給出應該輸入的一段文字、以及壞掉的那些鍵,打出的結果文字會是怎樣?spa

輸入格式:code

輸入在2行中分別給出壞掉的那些鍵、以及應該輸入的文字。其中對應英文字母的壞鍵以大寫給出;每段文字是不超過105個字符的串。可用的字符包括字母[a-z, A-Z]、數字0-九、以及下劃線「_」(表明空格)、「,」、「.」、「-」、「+」(表明上檔鍵)。題目保證第2行輸入的文字串非空。blog

注意:若是上檔鍵壞掉了,那麼大寫的英文字母沒法被打出。內存

輸出格式:get

在一行中輸出可以被打出的結果文字。若是沒有一個字符能被打出,則輸出空行。string

輸入樣例:
7+IE.
7_This_is_a_test.
輸出樣例:
_hs_s_a_tst
 1 #include<stdio.h>
 2 #include<math.h>
 3 #include<stdlib.h>
 4 #include<string.h>
 5 #include<algorithm>
 6 using namespace std;
 7 
 8 int main()
 9 {
10     int hashtable[150] = {};
11     int i, j;
12     char s1[100010], s2[100010], c;
13     gets(s1);
14     gets(s2);
15     int len1, len2;
16     len1 = strlen(s1);
17     len2 = strlen(s2);
18     for(i = 0; i < len1; i++)
19     {
20         c = s1[i];
21         hashtable[c] = 1;
22     }
23     for(i = 0; i < len2; i++)
24     {
25         c = s2[i];
26         if(hashtable['+'] == 1 && c >= 'A' && c <= 'Z')
27             continue;
28         if(hashtable[c] == 1)
29             continue;
30         if(c >= 'a' && c <= 'z' && hashtable[c + 'A' - 'a'] == 1)
31             continue;
32         printf("%c", c);
33     }
34     printf("\n");
35     return 0;
36 }
相關文章
相關標籤/搜索