1 条题解
-
0
#include<bits/stdc++.h> using namespace std; // 定义数组存储输入的数字,数组大小足够覆盖题目要求的数字范围(0~1000) int arr[1100]; int main() { // [1] 存储输入的数字总个数 int n; cin>>n; // [2] 循环读取n个数字,存入数组arr for(int i=0;i<n;i++){ cin>>arr[i]; } // [3] 对数组内的数字进行升序排序,为后续去重做准备 sort(arr,arr+n); // [4] 初始化不同数字的数量为1(至少包含第一个数字) int sum=1; // [5] 遍历数组,统计不同数字的个数 for(int i=1;i<n;i++){ if(arr[i]!=arr[i-1]){ // 当前数字与前一个不同时,说明是新的不同数字,计数+1 sum++; } } // [6] 先输出不同数字的总个数,再输出第一个数字 cout<<sum<<endl<<arr[0]<<endl; // [7] 遍历数组,输出去重后的每个数字 for(int i=1;i<n;i++){ if(arr[i]!=arr[i-1]){ // 当前数字与前一个不同时,才输出该数字 cout<<arr[i]<<endl; } } return 0; }
- 1
信息
- ID
- 1167
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 3
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者