华为机试——明明的随机数

来源:互联网 发布:淘宝品牌调性分怎么查 编辑:程序博客网 时间:2024/06/05 16:52

题目描述

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

Input Param
n 输入随机数的个数
inputArray n个随机整数组成的数组

Return Value
OutputArray 输出处理后的随机整数

注:测试用例保证输入参数的正确性,答题者无需验证。测试用例不止一组。

输入描述:

输入多行,先输入随机整数的个数,再输入相应个数的整数

输出描述:

返回多行,处理后的结果

示例1
输入

11102040326740208930040015

输出

10152032406789300400

思路:

将输入的数放到set中,因为它有不重复,自动排序的特点,且需要注意是循环输入。

代码:

#include <iostream>#include <set>using namespace std;int main() {    int N, tmp;    while (cin >> N){//要准备输入N个数        set<int> res;        while (N--){//当N不为0,            cin >> tmp;            res.insert(tmp);//把每个数放到set里,没有重复的,而且自动排序        }        for (set<int>::iterator iter = res.begin(); iter != res.end(); ++iter){            cout << *iter << endl;        }    }    return 0;}

输出结果: 运行时间: 3 ms 占用内存:368K 状态:答案正确

原创粉丝点击