给定两个字符串 S1 和 S2,S = S1 - S2 定义为从 S1 中取出 S2 中的所有字符后的剩余字符串。如何尽可能快地计算任何给定字符串的 S1 - S2?
例如 :
输入:
他们是学生。
艾欧
输出:
你的标准。
我已经尝试过哈希映射,遗憾的是法官说它太慢了,但是任何解决方案都可以更快吗?
这是我的代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
bool occur[300]={false};
int main()
{
char str1[10002];
gets(str1);
char ch;
while((ch=getchar())!='\n')
occur[ch]=true;
int i;
for(i=0;i<strlen(str1);i++)
if(occur[str1[i]])
continue;
else
putchar(str1[i]);
putchar('\n');
return 0;
}