题解 | #提取不重复的整数#

提取不重复的整数

https://www.nowcoder.com/practice/253986e66d114d378ae8de2e6c4577c1

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

int main() {
    int a;
    while (cin >> a) {  // 注意 while 处理多个 case
        set<int> s;
        vector<int> v;
        string str = to_string(a);
        string str1;
        for (int i = str.size() - 1; i >= 0; i--) {
            // 强制转换的时候还要注意ascii码的问题
            // '7'-'0' = 7,背后是55-48
            int b = str[i] - '0';
            if (s.find(b) == s.end()) {
                v.push_back(b);
            }
            s.insert(b);
        }

        for (int i = 0; i < v.size(); i++) {
            str1 += to_string(v[i]);
        }
        int res = stoi(str1);
        cout << res;
    }
    return 0;
}

全部评论

相关推荐

07-18 14:03
门头沟学院 Java
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-16 18:05
何尝不是一种学历歧视呢
下午吃泡馍:这种公司不投也罢,不过建议挂出公司名字,1.1w就应激到问是不是清北也是看得出来不是啥好公司了,估计这hr也没见过啥世面
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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