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

提取不重复的整数

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

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

int main() {
    int num = 0;
    cin >> num;
    string str = to_string(num);  //转换成字符串好处理
    int len = str.length();
    string Fina = str.substr(len - 1, 1);  //Fian初始值为str最后一个数字
    int k = 1;  //Fina中的数字个数
    bool tag;
    for (int i = len - 2; i >= 0; i--) {  //从倒数第二个数字开始遍历
        tag = true;    //标记为true,代表没有重复数字
        for (int j = 0; j < k; j++) {
            if (Fina[j] == str[i]) {   //遍历Fina已有数字,若有一个和str中数字相同则标记为false
                tag = false;
            }
        }
        if (tag) {  //如果遍历比较完Fina中已有数字,而且不存在重复的,则将当前str中的数字加入到Fina中
            Fina += str[i];
            k++;
        }
    }
    num = stoi(Fina);  //字符串转回数字;
    cout << num;
    return 0;

}

华为机试刷题实录 文章被收录于专栏

记录一下本科应届生(我自己)刷华为机试题的过程

全部评论

相关推荐

能干的三文鱼刷了100道题:公司可能有弄嵌入式需要会画pcb的需求,而且pcb能快速直观看出一个人某方面的实力。看看是否有面试资格。问你问题也能ai出来,pcb这东西能作假概率不高
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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