注意PAT系统使用gets函数需要用C编译,如果用C++编译会出现编译错误。
这道题很简单,边遍历边输出。
#include<stdio.h>
#include<string.h>
# define maxn 1000010
char str1[maxn], str2[maxn];
int hash[128]={0};
int main(){
gets(str1);
gets(str2);
int len1=strlen(str1);
int len2=strlen(str2);
int i;
for(i=0;i<len1;i++){
if(hash[str1[i]-0]==0)
printf("%c",str1[i]);
hash[str1[i]-0]=1; //标识为出现过了
}
for(i=0;i<len2;i++){
if(hash[str2[i]-0]==0)
printf("%c",str2[i]);
hash[str2[i]-0]=1;//标识为出现过了
}
printf("\n");
return 0;
}