题解 | 提取不重复的整数

#include <iostream>
#include <unordered_map>

using namespace std;

int main() {
    string num;
    while (cin >> num) { // 注意 while 处理多个 case
        unordered_map<char, int> map;
        string output;
	  // 输入的数倒序输出
        for (int i = num.size()-1; i >= 0; i --) {
		  //判断是否出现在hash map中
            if (map.find(num[i]) != map.end()) { // 已经出现在hash map中,略过
                continue;
            } else { // 没有出现在hash map中,打包字符串output, 并作标记
                output += num[i];
                map[num[i]] ++;
            }
        }
        // for (auto & it : map) {
        //     output += it.first;
        // }

        cout << output << endl;
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-11 13:34
offe从四面八方来:我真的没时间陪你闹了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-08 13:15
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务