题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1337
费马大定理:当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的整数解的个数。
输入最多包含10组数据。每组数据包含两个整数x, y(1<=x,y<=108)。
对于每组数据,输出解的个数。
1 101 20123 456789
Case 1: 0Case 2: 2Case 3: 16
PS:
需要加点判断条件,不然会超时!
代码如下:
#include <cstdio> #include <cstring> int main() { int x, y; int i, j; int cas = 0; while(~scanf("%d%d",&x,&y)) { int k = 0; for(i = x; i <= y; i++) { if((i*i*i)/10 > y) break; for(j = i; j <= y; j++) { int tt = i*i*i+j*j*j-3; if(tt/10 > y) break; if(tt/10 <= y && tt%10 == 0) { k++; } } } k *= 2; printf("Case %d: %d\n",++cas,k); } return 0; }
CSU 1337: 搞笑版费马大定理(数学啊 湖南省第九届大学生计算机程序设计竞赛)
原文地址:http://blog.csdn.net/u012860063/article/details/41384333