2013年湖南省第九届程序设计大赛 J 搞笑版费马大定理



1337: 搞笑版费马大定理

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 149   Solved: 74
[ Submit][ Status][ Web Board]

Description

费马大定理:当n>2时,不定方程an+bn=cn没有正整数解。比如a3+b3=c3没有正整数解。为了活跃气氛,我们不妨来个搞笑版:把方程改成a3+b3=c3,这样就有解了,比如a=4, b=9, c=79时43+93=793。

输入两个整数x, y, 求满足x<=a,b,c<=y的整数解的个数。

Input

输入最多包含10组数据。每组数据包含两个整数x, y(1<=x,y<=108)。

Output

对于每组数据,输出解的个数。

Sample Input

1 101 20123 456789

Sample Output

Case 1: 0
Case 2: 2
Case 3: 16
 
 
 
 

方法
因为x<= a,b,c<=y;  而 x,y<=10^8
所以c*10<= 10^9,  即a,b<= 10^3
  所以把X-10^3 所有的a,b组合枚举一次即可



PS:  靠,这道大水题啊, 训练赛的时候我居然都没看

代码:

#include <stdio.h>
#include <string.h>

int main()
{
	int x;
	int y;
	int T= 0;
	while(scanf("%d %d",&x,&y)!=EOF)
	{
		T++;
		printf("Case %d: ",T);
		if(x> 1001)
		{
			printf("0\n");
			continue;
		}
		int max= 1001;
		max= max> y? y: max;
		int ans= 0;
		for(int i= x; i<= max; i++)
			for(int j= x;j<= max; j++)
			{
				int num= i*i*i + j*j*j;
				if(num%10 == 3)
				{
					num/= 10;
					if(num>= x && num<= y)
						ans++;
				}
			}
		printf("%d\n", ans);		
	}
	return 0;
} 

你可能感兴趣的:(2013年湖南省第九届程序设计大赛 J 搞笑版费马大定理)