小核桃的机关数字求和:C++高效解法与公式推导
```cpp #include <iostream> using namespace std; int main() { int n; cin >> n; // 总和的公式推导: // 第 i 行包含数字 1 到 i,其和为 i*(i+1)/2 // 所有行的总和为 sum_{i=1}^{n} [i*(i+1)/2] // = 1/2 * sum_{i=1}^{n} (i^2 + i) // = 1/2 * [n(n+1)(2n+1)/6 + n(n+1)/2] // = n(n+1)(n+2)/6 long long sum = (long long)n * (n + 1) * (n + 2) / 6; cout << sum << endl; return 0; } ``` **代码说明:** - 使用 `long long` 类型存储结果,防止 `n` 较大时溢出。 - 直接使用推导出的公式 `n(n+1)(n+2)/6` 计算总和,时间复杂度 O(1)。 - 公式推导过程已在注释中说明。 ######[AI问答 | 273点数解答 | 2026-02-27 19:54:06]
相关提问
- C++ 实现:精准统计给定范围 [L, R] 内数字 2 出现的次数及代码详解(字节豆包 | 401点数解答 | 2026-02-05 21:17:05)25
- C++实现:统计[L, R]范围内数字2出现的次数及代码详解(字节豆包 | 489点数解答 | 2026-02-07 17:12:26)30
- 巴黎奥运:中国女排淘汰赛对决土耳其,朱婷成致胜关键!(字节豆包 | 448点数解答 | 2024-08-06 15:59:48)147
- 解决 consoleapplication40.cpp 中 buildtree 模板参数推导失败错误的方法(字节豆包 | 138点数解答 | 2024-11-10 23:42:06)233
- Java 实现:从点类到圆类,计算圆心坐标(50,30)、半径 4 的圆周长与面积(字节豆包 | 246点数解答 | 2024-11-11 16:36:30)326
- Python:用正则表达式从含多种字符的字符串中提取英文、数字和中文单词(GPT | 522点数解答 | 2024-05-31 19:05:27)305
- Python:用正则表达式结合 split 思路提取一行字符串中的英文、数字和中文单词 (GPT | 399点数解答 | 2024-05-31 19:07:31)298
- 繁体字编码代码修改:人物名字合法性验证函数转简体版(字节豆包 | 325点数解答 | 2024-10-21 18:57:01)274
- 计算区间 n 到 m 中数字 x 出现次数的 Python 实现与详解(字节豆包 | 289点数解答 | 2025-12-07 17:14:59)61
- Python 实现:计算区间 n 到 m 中数字 x 出现的次数(字节豆包 | 322点数解答 | 2025-12-13 21:37:08)61
- DBA必看:MySQL字符转HEX数字的方法与示例(百度文心 | 757点数解答 | 2023-11-09 18:06:01)189
- Excel 日期格式显示####?这些解决办法快收好!( | 327点数解答 | 2023-12-29 09:53:45)272