【GESP三级】去除重复数字暂无标签时间限制:CC++ 1000MS其他语言 2000MS内存限制:CC++ 16MB其他语言 32MB难度:中等出题人:描述给你N个数n<=100每个数都在0~1000之间其中由很多重复的数字请将重复的数字只保留一个并将剩下的数由小到大排序并输出。输入描述输入有2行 第1行为1个正整数表示数的个数N 第2行有N个用空格隔开的整数。输出描述第1行为1个正整数M表示不
#include
int main() {
int N;
cin >> N;
vector
sort(nums.begin(), nums.end()); // 将数字排序
// 去除重复数字
vector<int> uniqueNums;
uniqueNums.push_back(nums[0]);
for (int i = 1; i < N; i++) {
if (nums[i] != nums[i-1]) {
uniqueNums.push_back(nums[i]);
}
}
// 输出结果
int M = uniqueNums.size();
cout << M << endl;
for (int i = 0; i < M; i++) {
cout << uniqueNums[i] << endl;
}
return 0;
原文地址: http://www.cveoy.top/t/topic/iHdW 著作权归作者所有。请勿转载和采集!