ANS2:(set) #include<cstdio>#include<set>usingnamespacestd;intn, tmp; set<int> s;intmain(){scanf("%d", &n);while(n--){scanf("%d", &tmp); s.insert(tmp); }printf("%d\n", s.size());for(set<int>::iterator it = s.begin(); it != s.end(); it++)printf("%d ", *it...
明明的随机数 (set的练习) 题目描述: 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。...
18. ANS2:(set) #include <cstdio> #include <set> using namespace std; int n, tmp; set<int> s; int main(){ scanf("%d", &n); while(n--){ scanf("%d", &tmp); s.insert(tmp); } printf("%d\n", s.size()); for(set<int>::iterator it = s.begin(); it != s.end();...
1. 计数排序思想(c++) 2. set、 sorted(python) 3. TreeSet (java) 4. set容器 (c++) 回到顶部 2/3 [编程题] 明明的随机数 2/3[编程题] 明明的随机数 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算...
set<int>num; scanf("%d",&n); for(int i = 0;i <n;i++){ scanf("%d",&m); num.insert(m); } printf("%d\n",num.size()); for(set<int>::iterator it = num.begin();it != num.end();it++){ printf("%d",*it); if(it != num.end()) printf(" "); } } 0分 0 人...
解法4:采用 STL 容器 set set 因为是集合,所以自带了去重,而且内部实现是红黑树,时间效率也很优秀,每个数的插入、删除、查询的时间复杂度为O(logN),总时间复杂度O(NlogN)。 这里写传统迭代器的形式从小到大枚举 set,C++11可以使用 auto 关键字代替。
c2=set(c) c3=sorted(c2) print(len(c3)) for j in c3: print(j,end=' ') 4结语 针对随机数的问题,提出运用列表加循环的方法,通过本实验,证明该方法是有效的,本文只考虑了运用列表加循环的方法,当然对此问题还可以直接引用函数等方法进行解决。
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工...
去重、排序,这不就是TreeSet的数据结构嘛!因此,可以直接用TreeSet解决。 第一行先输入随机整数的个数 N 。 接下来的 N 行每行输入一个整数,代表明明生成的随机数。 随机数存入TreeSet结构,实现去重、排序。 输出排序后的结果。 代码如下: /* * Copyright (c) waylau.com, 2022. All rights reserved. ...
n=int(input())# 读取N个随机数numbers=list(map(int,input().split()))# 使用集合进行去重unique_numbers=list(set(numbers))# 对去重后的列表进行排序unique_numbers.sort()# 输出不相同的随机数的个数print(len(unique_numbers))# 输出排好序的不相同的随机数print(" ".join(map(str,unique_numbers)...