1093 字符串A+B (20分)

    技术2022-07-10  126

    题目:

    给定两个字符串 A 和 B,本题要求你输出 A+B,即两个字符串的并集。要求先输出 A,再输出 B,但重复的字符必须被剔除。

    输入格式:

    输入在两行中分别给出 A 和 B,均为长度不超过 10​6​​的、由可见 ASCII 字符 (即码值为32~126)和空格组成的、由回车标识结束的非空字符串。

    输出格式:

    在一行中输出题面要求的 A 和 B 的和。

    输入样例:

    This is a sample test to show you_How it works

    输出样例:

    This ampletowyu_Hrk

    代码:

    #include<iostream> using namespace std; int main(){ string a, b; getline(cin, a); //有空格 getline(cin, b); string c; for(int i=0;i < a.length();i++){ if(c.find(a[i]) == string::npos){ c+=a[i]; } } for(int i=0;i < b.length();i++){ if(c.find(b[i]) == string::npos){ c+=b[i]; } } cout << c << endl; } //#include<iostream> // //using namespace std; //int main(){ // string A, B; // int hash[200] = {0}; // //用数组hash标记一下是否是第一次输出即可 // getline(cin, A); // getline(cin, B); // string str = A + B; // for(int i=0;i < str.size();i++){ // if(hash[str[i]] == 0){ // cout << str[i]; // hash[str[i]] = 1; // } // } //}

     

    Processed: 0.015, SQL: 9