C++ 实现随机数去重与排序,助力新手解决问卷调查选号难题
以下是解决该问题的 C++ 代码: ```cpp #include <iostream> #include <vector> #include <algorithm> int main() { int N; // 读取随机数的个数 std::cin >> N; std::vector<int> numbers(N); // 读取 N 个随机数 for (int i = 0; i < N; ++i) { std::cin >> numbers[i]; } // 对数组进行排序 std::sort(numbers.begin(), numbers.end()); // 去重操作 std::vector<int> uniqueNumbers; for (int i = 0; i < N; ++i) { if (i == 0 || numbers[i] != numbers[i - 1]) { uniqueNumbers.push_back(numbers[i]); } } // 输出不相同的随机数的个数 int M = uniqueNumbers.size(); std::cout << M << std::endl; // 输出从小到大排好序的不相同的随机数 for (int i = 0; i < M; ++i) { if (i > 0) { std::cout << " "; } std::cout << uniqueNumbers[i]; } std::cout << std::endl; return 0; } ``` ### 代码解释: 1. **输入读取**:首先读取随机数的个数 `N`,然后读取 `N` 个随机数并存储在 `numbers` 向量中。 2. **排序**:使用 `std::sort` 函数对 `numbers` 向量进行排序,这样相同的数字会相邻。 3. **去重**:遍历排序后的 `numbers` 向量,将不重复的数字添加到 `uniqueNumbers` 向量中。 4. **输出结果**:输出不相同的随机数的个数 `M`,然后输出从小到大排好序的不相同的随机数。 ######[AI问答 | 480点数解答 | 2026-02-25 16:42:48]
- Matlab编程:血管机器人订购与生物学习,实现104周运营成本最低方案(字节豆包 | 3384点数解答 | 2025-06-22 13:25:13)175
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)328
- C++ 实现随机数去重与排序,助力新手解决问卷调查选号难题(字节豆包 | 480点数解答 | 2026-02-25 16:42:48)3
- 用 JavaScript 实现福利彩票抽奖:一键体验浏览器上的中奖乐趣!(GPT | 282点数解答 | 2024-09-25 20:36:52)256
- JavaScript实现福利彩票抽奖:含规则、界面与代码示例(GPT | 1542点数解答 | 2024-09-27 14:41:50)420
- 用 C++ 和 OpenCV 生成带随机偏移的圆周上的点:代码剖析(字节豆包 | 29点数解答 | 2024-11-06 23:40:42)251
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)296
- 过年期间光头强砍树问题的 C++ 解决方案(字节豆包 | 415点数解答 | 2026-02-25 12:15:25)4
- 过年期间光头强应对美人松查询问题的C++代码实现(字节豆包 | 502点数解答 | 2026-02-25 12:18:03)4
- 用C++找出奶牛“中间”产量的方法(字节豆包 | 457点数解答 | 2026-02-25 12:30:30)5
- 火车站车厢排序问题的 C++ 实现(字节豆包 | 489点数解答 | 2026-02-25 16:20:36)3
- C++ 实现按数字反转值排序输出指定区间整数(字节豆包 | 487点数解答 | 2026-02-25 16:51:54)4