本题要求你计算A-B。不过麻烦的是,A和B都是字符串 —— 即从字符串A中把字符串B所包含的字符全删掉,剩下的字符组成的就是字符串A-B。 输入格式: 输入在2行中先后给出字符串A和B。两字符串的长度都不超过104,并且保证每个字符串都是由可见的ASCII码和空白字符组成,最后以换行符结束。 输出格式: 在一行中打印出A-B的结果字符串。 输入样例:I love GPLT! It's a fun game! aeiou输出样例:I lv GPLT! It's fn gm!这里使用map,用int类型数据映射char类型数据, 先遍历字符串B,将其中的char对应的int都变为1(默认为0) 然后遍历字符串A,如果char对应的int为1,则不输出,否则输出。 这样,输出的结果就是A-B#include <cstdio> #include <iostream> #include <map> using namespace std; string s1, s2; map<char, int> table; int main () { getline(cin, s1); getline(cin, s2); for (int i = 0; i < s2.size(); i++) { table[s2[i]] = 1; } for (int i = 0; i < s1.size(); i++) { if (table[s1[i]] != 1) { printf("%c", s1[i]); } } return 0; }
查看原文:http://iluhao.top/archives/740
L1-011. A-B
最新推荐文章于 2023-12-24 00:45:00 发布