C++区间和查询问题:暴力遍历与前缀和优化实现
根据题目描述,这是一个典型的区间和查询问题。由于数据范围较小(n < 100,q < 100),可以直接使用前缀和数组或暴力遍历来求解。下面提供C++实现,包含详细的注释说明。 ```cpp #include <iostream> using namespace std; int main() { int n, q; cin >> n >> q; int a[105]; // 读取每朵花的鲜艳值 for (int i = 1; i <= n; i++) { cin >> a[i]; } // 处理q次询问 while (q--) { int L, R; cin >> L >> R; int sum = 0; // 遍历L到R,累加鲜艳值 for (int i = L; i <= R; i++) { sum += a[i]; } cout << sum << endl; } return 0; } ``` ## 💡 代码说明 暴力方法直接对每次询问遍历区间 `[L, R]`,累加元素值。由于n和q最大均为99,总操作次数约为 `99 * 99 = 9801`,远低于常见时间限制(1秒),因此完全可行。 若数据范围增大(例如n, q达到10^5),需改用前缀和数组优化: ```cpp #include <iostream> using namespace std; int main() { int n, q; cin >> n >> q; int prefix[105] = {0}; for (int i = 1; i <= n; i++) { int x; cin >> x; prefix[i] = prefix[i-1] + x; // 构建前缀和 } while (q--) { int L, R; cin >> L >> R; cout << prefix[R] - prefix[L-1] << endl; // O(1)查询 } return 0; } ``` ## ⚙️ 输入输出格式 - 输入第一行两个整数,空格分隔 - 第二行n个整数 - 之后q行,每行两个整数L, R - 输出q行,每行一个整数 ######[AI问答 | 505点数解答 | 2026-08-09 09:33:51]
- Python实现:随机录入45位学生四次成绩函数大揭秘(GPT | 477点数解答 | 2024-12-17 17:00:35)436
- Python实现班级45位同学成绩生成、总评计算及分数统计(字节豆包 | 579点数解答 | 2024-12-21 11:55:01)323
- Python实现45位学生四次成绩随机录入及输出(GPT | 441点数解答 | 2024-12-21 21:02:22)324
- Python实战:45位同学成绩生成、总评计算与分数统计揭秘(字节豆包 | 688点数解答 | 2024-12-22 10:14:17)312
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)558
- 补全含错误代码:Vue结合Element UI组件实现查询、新增及表格展示功能 ( | 400点数解答 | 2023-12-19 15:20:50)508
- 单线程频繁查ClickHouse致CPU飙升?这些优化方案速看!(DeepSeek | 491点数解答 | 2025-02-13 17:49:54)293
- MySQL:巧用 NOT LIKE 查询字段不包含特定字符串及注意要点 (DeepSeek | 264点数解答 | 2025-02-13 18:25:01)243
- 解析React 15与Vue 2:从O(n^3)到O(n),Diff算法时间复杂度计算及性能对比 (阿里通义 | 379点数解答 | 2023-11-09 01:49:19)436
- 缜密逻辑,全新无名杀“风餐”技能代码精心打造与深度解析 (字节豆包 | 469点数解答 | 2025-04-05 11:37:06)388
- 精准优化:明确需求,开启高效提升之旅! (字节豆包 | 52点数解答 | 2026-02-09 16:44:46)159
- 代码再升级:优化版“获取dump”代码,多机制保障数据读取与保存(字节豆包 | 734点数解答 | 2026-02-10 01:23:31)151