Description
题目大意:有两个字符串S1,S2,要求出从S1中移出S2中有的字符
Input
S1 S2
Output
S1-S2
解题思路
算法标签:字符串(实在想不出什么算法)
标记S2中出现的字符,充分利用ASCII的数值转换,遍历S1,如果S1[i]已经被isused标记,则不输出,否则输出
代码
//TSWorld
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <cstring>
#include <cmath>
#include <vector>
using namespace std;
bool isused[N];
int main()
{
string S1,S2;
int number = 0;
getline(cin,S1);
getline(cin,S2);
for(int i = 0;i < S2.length();i++)
{
number = S2[i];
isused[number] = true;
}
for(int i = 0;i < S1.length();i++)
{
number = S1[i];
if(!isused[number])
cout<<S1[i];
}
return 0;
}