NOIP 2006 明明的随机数
2017-06-04 10:50
190 查看
【问题描述】
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了 N 个 1 到 1000 之间的随机整数( N ≤ 100 ),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按 照 排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。
【输入格式】
输入文件 random.in 有 2 行,第 1 行为 1 个正整数,表示所生成的随机数的个数:N
第 2 行有 N 个用空格隔开的正整数,为所产生的随机数。
【输出格式】
输出文件 random.out 也是 2 行,第 1 行为 1 个正整数 M ,表示不相同的随机数的个数。第 2 行为 M 个用空格隔开的正整数,为从小到大排好序的不相同的随机数。
【输入输出样例】
输入:
10
20 40 32 67 40 20 89 300 400 15
输出:
8
15 20 32 40 67 89 300 400
本来是想刷TP,又被题目列表骗了,水题不A,我心痛啊
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了 N 个 1 到 1000 之间的随机整数( N ≤ 100 ),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按 照 排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。
【输入格式】
输入文件 random.in 有 2 行,第 1 行为 1 个正整数,表示所生成的随机数的个数:N
第 2 行有 N 个用空格隔开的正整数,为所产生的随机数。
【输出格式】
输出文件 random.out 也是 2 行,第 1 行为 1 个正整数 M ,表示不相同的随机数的个数。第 2 行为 M 个用空格隔开的正整数,为从小到大排好序的不相同的随机数。
【输入输出样例】
输入:
10
20 40 32 67 40 20 89 300 400 15
输出:
8
15 20 32 40 67 89 300 400
本来是想刷TP,又被题目列表骗了,水题不A,我心痛啊
#include<iostream> #include<cstring> #include<cstdio> #include<algorithm> using namespace std; int n,a[105]; int main(){ freopen("random.in","r",stdin); freopen("random.out","w",stdout); scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&a[i]); sort(a+1,a+1+n); unique(a+1,a+n+1); int pos=1; while(a[pos]>a[pos-1]) pos++; printf("%d\n",pos-1); for(int i=1;i<pos;i++) printf("%d ",a[i]); return 0; }
相关文章推荐
- NOIP 2006 普及组 复赛 random 明明的随机数
- [noip2006pj] 明明的随机数
- noip2006 明明的随机数 (模拟)
- 明明的随机数(6 Noip2006 普及组第 1 1 题)
- NOIP2006 明明的随机数
- |洛谷|NOIP2006|排序|P1059 明明的随机数
- NOIP2006普及组复赛试题 1.明明的随机数(桶排序,冒泡排序,快速排序)
- 明明的随机数(2006年NOIP全国联赛普及组)
- wikioi1075 明明的随机数(2006年NOIP全国联赛普及组)
- noip2006提高组-金明的预算方案解题报告
- NOIP 2006 能量项链
- CODEVS 1075 明明的随机数
- 五、华为2017<明明的随机数>
- 明明的随机数
- 明明的随机数—洛谷 1059
- 明明的随机数
- 练习赛7(1.明明随机数)
- NOIP2006 2k进制数
- Java - 华为机试训练 - 明明的随机数
- 洛谷 1063 [NOIP2006] 能量项链 DP