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

连续奇数求和公式与C++实现

```cpp #include <iostream> using namespace std; int main() { int n; cin >> n; // 计算总和 // 第i行有i个数字,和为i^2 // 因此n行总和 = 1^2 + 2^2 + ... + n^2 = n*(n+1)*(2n+1)/6 int sum = n * (n + 1) * (2 * n + 1) / 6; cout << sum << endl; return 0; } ``` ## 🤔 解题思路 注意观察规律: - 第1行:1 → 1个数,和为1 = 1² - 第2行:1+3 → 2个数,和为4 = 2² - 第3行:1+3+5 → 3个数,和为9 = 3² - 第4行:1+3+5+7 → 4个数,和为16 = 4² 每行都是连续奇数,第i行有i个数,和为 i²。 因此n行总和 = 1² + 2² + ... + n² = n × (n+1) × (2n+1) ÷ 6 直接使用公式计算,时间复杂度O(1),无需循环。 ######[AI问答 | 304点数解答 | 2026-07-18 11:16:43]

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