1050.String Subtraction

2016-06-04  本文已影响0人  81f83b4769e0

1050.String Subtraction

求解思路

  1. ASCII码的范围为0~255,所以用一个大小为256的数组来记录s2中出现过的字符。
  2. 如果flag[i]=false,说明字符s2[i]在s1中没有出现过,输出即可。

注意

由于输入的字符串s1和s2都有可能包含空格,所以选择用getline(cin, string)来读取一整行字符,遇到回车结束读入,回车符不包含在该stirng中。

C++源码

#include<iostream>
#include<string>
using namespace std;

int main()
{
    bool flag[256];
    string s1, s2;
    for(int i = 0; i < 256; i++)
    {
        flag[i] = false;
    }
    getline(cin, s1);
    getline(cin, s2);
    for(int i = 0; i < s2.length(); i++)
    {
        flag[s2[i]] = true;
    }
    for(int i = 0; i < s1.length(); i++)
    {
        if(flag[s1[i]] == false)
        {
            cout<<s1[i];
        }
    }
    cout<<endl;
    return 0;
}
上一篇下一篇

猜你喜欢

热点阅读