N = int(input()) res = 0 for i in range(N-1): res+=pow((N-(i+1)),2)*(i+1) res= res%1000000007 print(res) 将这段Python转成C++
时间: 2024-10-24 16:13:24 浏览: 20
lapti-pow-captcha:工作量验证码,无需外部服务呼叫
这段Python代码的功能是计算从0到`N-2`之间所有整数的平方减去当前索引加一后,再对结果取平方并乘以当前索引加一,然后将这些积相加的结果对1000000007取余。下面是等效的C++代码:
```cpp
#include <iostream>
using namespace std;
int main() {
long long N, res = 0;
cin >> N; // 读入N
for (int i = 0; i < N - 1; ++i) {
long long term = pow((N - (i + 1)), 2) * (i + 1);
res += term;
res %= 1000000007; // 对1000000007取模
}
cout << res << endl; // 输出结果
return 0;
}
```
这里使用了`long long`类型来确保计算过程中不会溢出,因为原Python代码中的幂运算可能会导致大数值。同时,C++中的`pow`函数来自头文件`<cmath>`,用于计算指数。
阅读全文