c++仓库里有n个五颜六色的闪点裂隙禾木想统计一下它们总共有几种颜色。请你编写程序帮助他除去重复的颜色其余颜色按照数字大小从大到小输出。【提示】使用选择排序从大到小排好序后从第二个数开始如果与前一个数相同就说明是重复的数否则就说明是一个新的数。输入 共两行。第一行为一个整数n1n100表示闪点裂隙的个数。第二行为n个整数表示每个闪点裂隙的颜色。输出 一行若干个整数表示从大到小排好序的、去掉重复的颜
#include
using namespace std;
int main() { int n; cin >> n;
vector<int> colors(n);
for (int i = 0; i < n; i++) {
cin >> colors[i];
}
// Sort the colors in descending order
sort(colors.begin(), colors.end(), greater<int>());
// Remove duplicates
vector<int>::iterator it = unique(colors.begin(), colors.end());
colors.resize(distance(colors.begin(), it));
// Print the colors
for (int i = 0; i < colors.size(); i++) {
cout << colors[i] << " ";
}
return 0;
原文地址: https://www.cveoy.top/t/topic/iQfH 著作权归作者所有。请勿转载和采集!