《华为机试》刷题之HJ9 提取不重复的整数

一、题目

输入一个 int 型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
保证输入的整数最后一位不是 0 。
数据范围: 1 ≤ n ≤ 1 0 8 1\le n\le 10^8 1≤n≤108

输入描述:
输入一个int型整数

输出描述:
按照从右向左的阅读顺序,返回一个不含重复数字的新的整数

二、示例

输入:9876673
输出:37689

三、代码

int1 = list(input())
temp = []
for i in range(len(int1)-1,-1,-1):
    if int1[i] not in temp:
        temp.append(int1[i])
print(int(''.join(temp)))

四、算法说明

首先将输入的整数转化为列表int1,然后建立空列表temp
从后往前,逆序遍历列表int1中的元素,如果当前元素不在列表temp中,将其添加到temp中;
最后将temp中的元素合成为字符串,然后转换为整数,打印输出。

胡萝卜

2022年1月16日22:51:06

我不知道将去向何方,但我已在路上!
时光匆匆,虽未曾谋面,却相遇于斯,实在是莫大的缘分,感谢您的到访 !
上一篇:二、引用。


下一篇:Python入门day12——文件操作的补充