连续自然数的平方和

【Description】
  我们大家都知道勾股定理: 3 2 + 4 2 = 5 2 3^2+4^2=5^2 ,其中3,4,5是连续的自然数;同时,连续自然数10,11,12,13,14之间也有关系式: 1 0 2 + 1 1 2 + 1 2 2 = 1 3 2 + 1 4 2 10^2+11^2+12^2=13^2+14^2 ,你从中得到了什么启发?
  问题:给定自然数n(1≤n≤1000),请判断是否存在2n+1个连续的自然数,满足左边n+1个数的平方和等于右边n个数的平方和?若存在,则输出这2n+1个数。
【Input】
输入自然数n(1≤n≤1000)。
【Output】
若存在,则输出这2*n+1个数,每两个数之间一个空格;否则输出No。
【Sample Input】
2
【Sample Output】
10 11 12 13 14
示例代码

#include "stdio.h"
int main(int argc, char const *argv[])
{
	int n,i,j,lsum,rsum;
	scanf("%d",&n);
	for (i=0; i<10000; i++)
	{
		lsum = 0;
		rsum =0;
		for (j=0; j<=n; j++)
			lsum += (i+j)*(i+j);
		for (j=n+1; j<=2*n; j++)
			rsum += (i+j)*(i+j);
		if (lsum == rsum)
		{
			for (j=0; j<2*n+1; j++)
				printf("%d ", i+j);
			printf("\n");
		}
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/Iversonx/article/details/83901887