python 编程题明明的随机数

明明想在学校中请一些同学做问卷调查,用计算机生成了N个1-1000随机数, N<1000 ,对于重复的数字只保留一个,相同的去掉,不同的数代表着不同的学生学号,然后把这些数从小到大排序,按照顺序找同学做问卷,请协助明明完成"去重"和排序"工作",可能会出现多组数据,用于不通的调查。

测试用例保障输入的正确性,答题者无需验证,测试用例不止一组,一直有输入则一直计算,没有输入的时候则结束。

输入:

第一个n数代表本组数据有n个随机数,接下来的n行是对应的随机数,然后第n+2行开始就是下一组数据的个数。

输出:

返回去重排序后的结果:

例如:第一行3表示接下来的三个数是第一组的随机数,第5行的6表示,接下来的6行是第二组的随机数

3
2
2
1
6
21
34
44
34
187
200

输出:

1
2
21
34
44
187
200

python代码如下:主要使用了集合set() 里面的元素不重复的特性进行去重,利用sorted函数,可以对所有可迭代的对象进行排序操作,在利用try 捕捉range函数输入为空的报错进行停止。

#!/usr/bin/python
#-*- coding:utf-8 -*-
res = set()
while True:
    try:
        a = int(raw_input())
        for i in range(a):
            b = int(raw_input())
            res.add(b)
    except :
        break
            
for i in sorted(res):
    print i 

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值