#include<stdio.h>
#define M 100009
int cha
[41]={};
char lost
[M
],str
[M
];
int f(char c
)
{
if(c
>='0'&&c
<='9')
return c
-48;
if(c
>='a'&&c
<='z')
return c
-87;
if(c
>='A'&&c
<='Z')
return c
-55;
if(c
=='_')
return 36;
if(c
==',')
return 37;
if(c
=='.')
return 38;
if(c
=='-')
return 39;
return 40;
}
int main()
{
gets(lost
);
gets(str
);
int i
,j
=0;
for(i
=0;lost
[i
];i
++)
cha
[f(lost
[i
])]=1;
for(i
=0;str
[i
];i
++)
if(cha
[f(str
[i
])]==0)
{
if(str
[i
]>='A'&&str
[i
]<='Z'&&cha
[40]==1)
continue;
else printf("%c",str
[i
]);
}
printf("\n");
return 0;
}
就在那句“题目保证第 2 行输入的文字串非空。” 但是没说第一行字符串一定非空 因此要考虑第一行输入回车的情况
转载请注明原文地址:https://ipadbbs.8miu.com/read-43008.html