P1011 - 明明的随机数

题目描述

明明想在学校请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了n个1到1000之间的随机数,对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对于着不同的学生的学号。然后再把这些数从小到大排序,按照排序好的顺序去找同学做调查,请你写个程序帮他实现去重和排序的工作

输入格式

第1行为1个正整数,代表要生成随机数的个数

第2行为n个空格分隔的正整数,为所产生的随机数

输出格式

第1行为1个正整数,代表一共有多少个不相同的随机数

第2行为m个用空格分隔的正整数,为从小到大排序好的不相同的随机数

输入输出样例

输入样例 输出样例
10
20 40 32 67 40 20 89 300 400 15
8
15 20 32 40 67 89 300 400

数据范围与提示

50%的数据:1 <= 随机数 <= 1000,$1 \le n \le 100$,

100%的数据:1 <= 随机数 <= 1000,$1 \le n \le 10^{6}$,

测试点数目

共10个测试点,每个测试点10分

时间与内存限制

每个测试点时间:200ms(0.2s),内存:256MiB

输入输出模式

本OJ支持两种输入输出模式

1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:P1011.in,输出文件名为:P1011.out