酷代码 AI
菜单
服务商
DeepSeek字节豆包
更多选项

C++实现两两分组求较小值之和算法

```cpp #include <iostream> #include <vector> using namespace std; int main() { // 🎯 读取整数n int n; cin >> n; // 📊 读取数组元素 vector<int> arr(n); for (int i = 0; i < n; i++) { cin >> arr[i]; } // ✨ 计算每组较小值的和 int total = 0; for (int i = 0; i < n; i += 2) { total += min(arr[i], arr[i + 1]); } // 📤 输出结果 cout << total << endl; return 0; } ``` ### 代码解析 1. 使用 `vector<int>` 存储输入的 n 个整数。 2. 通过 `for` 循环以步长 2 遍历数组,每次取连续的两个元素。 3. 调用 `min()` 函数获取这两个数中的较小值并累加。 4. 最终打印求和结果。 ### 复杂度分析 - ⏱ **时间复杂度**: O(n) — 只需遍历数组一次 - 💾 **空间复杂度**: O(n) — 使用数组存储 n 个整数 ### 测试验证 输入: ``` 4 1 2 3 4 ``` 运算过程: - 第1组:(1, 2) → min = 1 - 第2组:(3, 4) → min = 3 - 总和 = 1 + 3 = 4 输出: ``` 4 ``` 与题目样例完全一致 ✅ ######[AI问答 | 368点数解答 | 2026-06-21 20:03:03]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]