小明看到一本书上写着:任何数字的立方都可以表示为连续奇数的和。
比如:
2^3 = 8 = 3 + 5
3^3 = 27 = 7 + 9 + 11
4^3 = 64 = 1 + 3 + ... + 15
虽然他没有想出怎么证明,但他想通过计算机进行验证。
请你帮助小明写出 111 的立方之连续奇数和表示法的起始数字。如果有多个表示方案,选择起始数字小的方案。
请严格按照要求,通过浏览器提交答案。
注意:只提交一个整数,不要写其它附加内容,比如:说明性的文字。
#include<iostream>
#include<algorithm>
using namespace std;
int main() {
int x=111*111*111;
for(int i=0;1;i++){ //设置开始奇数为 i*2+1
int sum=0;
for(int j=i*2+1;sum<=x;j+=2){
sum+=j;
if(sum==x){ //找到符合的开始奇数,则退出
cout<<i*2+1<<endl;
return 0;
}
}
}
return 0;
}
结果 :371