Pat(Basic Level)Practice--1029(旧键盘)

Pat1029代码

题目描述:

旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。

输入格式:

输入在2行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过80个字符的串,由字母A-Z(包括大、小写)、数字0-9、以及下划线“_”(代表空格)组成。题目保证2个字符串均非空。

输出格式:

按照发现顺序,在一行中输出坏掉的键。其中英文字母只输出大写,每个坏键只输出一次。题目保证至少有1个坏键。

输入样例:

7_This_is_a_test

_hs_s_a_es

输出样例:

7TI

代码:
#include<cstdio>
#include<cstdlib>
#include<map>
#define MAXN 100

using namespace std;

void featureNormalize(char str[]){
	for(int i=0;str[i]!='\0';i++){
		if(str[i]>='a'&&str[i]<='z'){
			str[i]=str[i]-'a'+'A';
		}
	}
}

int main(int argc,char *argv[]){
	char stdInput[MAXN];
	char factInput[MAXN];
	map<char,int> m;
	scanf("%s",stdInput);
	scanf("%s",factInput);
	featureNormalize(stdInput);
	featureNormalize(factInput);
	for(int i=0;factInput[i]!='\0';i++){
		char key=factInput[i];
		m[key]++;
	}
	for(int i=0;stdInput[i]!='\0';i++){
		char key=stdInput[i];
		if(m[key]==0){
			printf("%c",key);
			m[key]++;
		}
	}
	printf("\n");
}

发布了253 篇原创文章 · 获赞 26 · 访问量 33万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章