今天的题目:提取不重复的整数
输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
首先对于实现逆序,有以下几个方法:
字符串逆序
1、
strA[::-1]
2、
#coding=utf-8
strA = raw_input("请输入需要翻转的字符串:")
order = []
for i in strA:
order.append(i)
order.reverse() #将列表反转
print ''.join(order) #将list转换成字符串
我在一开始想到的方法就是通过将数字放入list然后进行逆序排序,set实现去重,其实是不可以的,因为使用set之后的顺序就打乱了。
参考了一下其他人的代码:
其中一个高手很好的解决了我的问题,而且代码很简单,对set集合排序,使用了原list的索引
a = str(input())[::-1]
print ''.join(sorted(set(a),key=a.index))
# 这个代码在网站上显示的内存占用为0,而第二段代码占用为140K
n=raw_input()
l=list(reversed(n))
result=[]
for i in l:
if i not in result:
result.append(i)
print("".join(result))
n=raw_input()
l=(reversed(n))
result=[]
for i in l:
if i not in result:
result.append(i)
print (''.join(result))
网友评论