Nocomachns定理:任何一个正整数n的立方一定可以表示成n个连续的奇数的和.
n*n*n=(n*n-n+1)+(n*n-n+3)+...+(n*n+n-1)
验证程序:(不一定是n个数哦)
#include
int main()
{
long left, right, i;
long sum;
long GIVEN, n;
scanf ("%ld",& GIVEN);
n = GIVEN * GIVEN * GIVEN;
for (sum = 0, left = right = 1; left < n/2+1; right += 2)
{
sum += right;
while (sum > n)
{
sum -= left;
left += 2;
}
if (sum == n)
{
printf("%ld=%ld", n, left);
for(i = left + 2; i <= right; i+=2)
printf("+%ld", i);
printf("\n");
}
}
return 0;
}