目录
题目描述:
小明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性他先用计算机生成了N个1~1000之间的随机整数(N<=1000),N是用户输入的,对于其中重复的数字,只保留一个,把其余相同的数字去掉,不同的数对应着不同的学生的学号,然后再把这些数从小到大排序,按照排好的顺序去找同学做调查,请你协助明明完成“去重”与排序工作
输入描述
第 1 行为 1 个正整数,表示所生成的随机数的个数:N;
输出描述
第 1 行为 生成的N 个没有排序的随机数正整数。
第 2 行为 N个用空格隔开的正整数,为从小到大排好序的不相同的随机数。
运行限制
最大运行时间:1s
最大运行内存: 128M
分析:集合可以用来去重,即每生成一个随机数便将其加入到定义的空集合中集合即可
sorted函数可以对集合进行排序
- import random
- # 接收用户输入
- N = int(input('N:'))
- # 定义空集合;用集合便可以实现自动去重(集合里面的元素是不可重复的)
- gather = set([])
- # 生成N个1~1000之间的随机整数
- for i in range(N):
- num = random.randint(1,1000)
- # add:添加元素
- gather.add(num)
-
- print(gather)
- # sorted: 集合的排序
- print(sorted(gather))
代码运行结果:
N:10
{992, 2, 772, 134, 936, 670, 365, 560, 758, 926}
[2, 134, 365, 560, 670, 758, 772, 926, 936, 992]
IEEE和TIOBE是两大热门编程语言排行榜。截至2023年6月,IEEE榜排名前五的语言是:Python,Java,C++,C,JavaScript。TIOBE榜排名前五的语言分别是:Python,C,C++,Java,C#。请编程:
1、上榜的所有语言
2、两个榜单中同时出现的语言
3、只在IEEE榜中前五的语言
4、只在一个榜中出现的语言
- TIOBE = {"Python", "Java", "C++","C","JavaScript"}
- IEEE = { "Python" , "C","C++", "Java","C#"}
- print(TIOBE | IEEE)#并集
- print(TIOBE & IEEE)#交集
- print(IEEE - TIOBE)#差集
- print(TIOBE ^ IEEE)#对称差集
代码运行结果:
{'C', 'Python', 'Java', 'JavaScript', 'C#', 'C++'}
{'C', 'Python', 'C++', 'Java'}
{'C#'}
{'JavaScript', 'C#'}