C++ 实现仓库闪点裂隙颜色去重并从大到小排序
以下是一个使用 C++ 编写的程序,用于解决从仓库中统计闪点裂隙不同颜色并按数字大小从大到小输出的问题。 ```cpp #include <iostream> #include <vector> #include <algorithm> #include <unordered_set> // 主函数,程序的入口点 int main() { int n; std::cout << "请输入闪点裂隙的数量: "; std::cin >> n; std::vector<int> colors(n); // 用于存储输入的颜色 std::cout << "请依次输入每个闪点裂隙的颜色: "; for (int i = 0; i < n; ++i) { std::cin >> colors[i]; } // 使用无序集合去除重复颜色 std::unordered_set<int> uniqueColors(colors.begin(), colors.end()); // 将去重后的颜色转移到向量中以便排序 std::vector<int> sortedColors(uniqueColors.begin(), uniqueColors.end()); // 对颜色进行从大到小排序 std::sort(sortedColors.begin(), sortedColors.end(), std::greater<int>()); // 输出排序后的不同颜色 std::cout << "去重后按从大到小排序的颜色为: "; for (int color : sortedColors) { std::cout << color << " "; } std::cout << std::endl; return 0; } ``` ### 代码解释: 1. **输入处理**:首先程序会要求用户输入仓库中闪点裂隙的数量 `n`,接着让用户依次输入每个闪点裂隙的颜色,并将这些颜色存储在 `colors` 向量中。 2. **去重操作**:使用 `std::unordered_set` 来存储颜色,由于无序集合的特性,它会自动去除重复的元素,从而得到不同的颜色。 3. **排序操作**:将去重后的颜色从无序集合转移到 `sortedColors` 向量中,然后使用 `std::sort` 函数并结合 `std::greater<int>()` 来进行从大到小的排序。 4. **输出结果**:最后程序将排序好的不同颜色输出。 ######[AI问答 | 521点数解答 | 2026-04-11 19:09:24]
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)354
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)327
- C++ 实战:交通工具基类与小汽车类的继承实现及测试(字节豆包 | 391点数解答 | 2024-09-18 16:16:39)268
- Java 实现交通工具类继承:从 Vehicles 到 Car 的完整示例(字节豆包 | 289点数解答 | 2024-09-18 16:16:54)245
- Java 继承实战:交通工具与小汽车类的定义与测试(字节豆包 | 293点数解答 | 2024-09-18 21:36:23)367
- Java实战:交通工具与小汽车类定义及测试全解析(字节豆包 | 290点数解答 | 2024-09-18 21:39:01)335
- Java 实战:交通工具类(Vehicle)及子类小汽车(Car)、卡车(Truck)的继承与实现(GPT | 919点数解答 | 2024-09-20 08:06:42)371
- C++实现交通工具及小汽车类:含代码示例与注意要点(字节豆包 | 378点数解答 | 2024-12-01 22:22:46)223
- Python 代码:轻松加入 RGB 颜色处理,含示例及注意要点 (字节豆包 | 500点数解答 | 2025-02-18 22:29:41)147
- C语言实现多班级学生信息管理系统:含增删改查与多样排序功能(GPT | 2547点数解答 | 2024-12-15 22:08:58)366
- C语言实现学生信息管理系统:含增删改查与多种排序功能(GPT | 6408点数解答 | 2024-12-15 22:10:03)354
- sys_module 表结构与 Java 实体类 SysModule 详解(字节豆包 | 252点数解答 | 2025-04-09 10:54:17)217