C++ 实现珠心算加法测验:计算集合中满足两数之和条件的数的个数
```cpp #include <iostream> #include <set> using namespace std; int main() { int n; cin >> n; int numbers[100]; set<int> sums; set<int> ans; // 读取输入的正整数 for (int i = 0; i < n; i++) { cin >> numbers[i]; } // 计算所有不同两数之和 for (int i = 0; i < n; i++) { for (int j = i + 1; j < n; j++) { sums.insert(numbers[i] + numbers[j]); } } // 检查集合中的数是否等于另外两个数之和 for (int i = 0; i < n; i++) { if (sums.find(numbers[i]) != sums.end()) { ans.insert(numbers[i]); } } // 输出结果 cout << ans.size() << endl; return 0; } ``` 代码解释: 1. 输入处理:首先读取正整数的个数`n`,然后将这些正整数存储在数组`numbers`中。 2. 计算两数之和:使用两层循环遍历数组,计算所有不同两数之和,并将这些和存储在`set`容器`sums`中。 3. 检查是否满足条件:遍历数组中的每个数,检查它是否在`sums`集合中。如果存在,则将该数插入到另一个`set`容器`ans`中。 4. 输出结果:由于`set`容器会自动去重,所以`ans`的大小就是满足条件的数的个数,将其输出。 复杂度分析: - 时间复杂度:$O(n^2)$,主要是计算两数之和的两层循环。 - 空间复杂度:$O(n^2)$,主要用于存储两数之和的集合。 ######[AI问答 | 452点数解答 | 2025-11-24 19:17:14]
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)350
- C++ 实现:根据给定正整数构造 3×3 方阵并计算满足条件的方案数(阿里通义 | 875点数解答 | 2024-11-13 16:38:24)250
- C++实现:低复杂度求解 3×3 方阵构造方案数(阿里通义 | 708点数解答 | 2024-11-13 16:45:15)288
- Python 高效解决 U 王国社区端午节粽子分配数量计算问题(DeepSeek | 218点数解答 | 2025-05-31 18:33:52)199
- C++ 实现:根据家庭人数精准计算 U 王国社区粽子分配总数(DeepSeek | 250点数解答 | 2025-05-31 18:36:11)170
- 幼儿园小朋友学号奇偶分类:代码实现与详细解释(字节豆包 | 406点数解答 | 2025-11-26 19:39:05)61
- 策略游戏大揭秘:小 L 与小 Q 最优策略下每轮得分计算全解析(字节豆包 | 676点数解答 | 2025-12-12 18:49:42)65
- Python代码:简化网友国度货币系统,求解最小货币种数(字节豆包 | 529点数解答 | 2025-12-13 10:29:25)55
- 数轴旅行:从原点出发,能否到达目标位置?(字节豆包 | 225点数解答 | 2026-01-23 19:51:03)48
- Python 实现:计算特殊规则矩阵行列式并对 109+7 取模(字节豆包 | 672点数解答 | 2026-02-05 20:46:07)48
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)322
- Python 求解小火龙正整数序列中等差数列整数对个数问题(字节豆包 | 227点数解答 | 2025-02-04 13:34:48)189