明明生成了个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。
数据范围: ,输入的数字大小满足
明明生成了个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。
第一行先输入随机整数的个数 N 。 接下来的 N 行每行输入一个整数,代表明明生成的随机数。 具体格式可以参考下面的"示例"。
输出多行,表示输入数据处理后的结果
3 2 2 1
1 2
输入解释: 第一个数字是3,也即这个小样例的N=3,说明用计算机生成了3个1到500之间的随机整数,接下来每行一个随机数字,共3行,也即这3个随机数字为: 2 2 1 所以样例的输出为: 1 2
import sys i=0 numlist=[] for line in sys.stdin: a = line.split() #print(int(a[0]) + int(a[1])) #print(a) num=int(a[0]) #print(num) if(i==0): len=num else: numlist.append(num) i=i+1 #print(numlist) numlist=set(numlist) numlist=list(numlist) numlist.sort() for item in numlist: print(item)python的set可以去除重复值
import sys def func(arr): for n in sorted(list(set(arr))): print(n) while True: try: num = int(input()) arr = [] for i in range(num): arr.append(int(input())) func(arr) except: break# 方法二:
import sys nums = [] start = 0 for line in sys.stdin: # 读取每行的数字 n = int(line.strip()) # start为0,说明是初次读取数字,将start设置为N,同时将列表清空 if start == 0: start = n nums = [] else: # 读取的数字存入列表中,同时start自减1 nums.append(n) start -= 1 # 当start减到0时,说明一组输入已经完成,将排序后的结果打印出来 if start == 0: nums = sorted(list(set(nums))) for i in nums: print(i)
try: while True: num = int(input()) lt = set() for i in range(num): lt.add(int(input())) lst = list(lt) lst.sort() for a in lst: print(a) except EOFError: pass
import sys def fsort(E): A=list(set(E)) A.sort() for i in A: print(i) def spl(w,num): try: E=w[num+1:num+w[num]+1] fsort(E) spl(w,num+w[num]+1) except: pass if __name__ == "__main__": Rawlist=[] for line in sys.stdin: Rawl= line.split() Rawlist.append(Rawl) w=[] for Raw in Rawlist: w.append(int(Raw[0])) #print(w) spl(w, 0)给python丢人了,把输入的所有值当一次性输入处理了,多写了个分割的方法......麻烦死了
while True: try: #我真是服了,牛客网的做法比leetcode差太远了,为啥老要用input() #这里的a=input(),是为了先接收‘他先用计算机生成了N个1到1000之间的随机整数(N≤1000)’这里的参数N #然后b集合add的才是输入的随机数 a,b=int(input()),set() for i in range(a): b.add(int(input())) for i in sorted(b): print(i) except: break我觉得大部分人和我一样没看懂python这个写法,但很弱智