CSU
来源:互联网 发布:js点击按钮复制链接 编辑:程序博客网 时间:2024/04/30 23:31
1337: 搞笑版费马大定理
Time Limit: 1 Sec Memory Limit: 128 Mb Submitted: 968 Solved: 480Description
费马大定理:当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: 0Case 2: 2Case 3: 16
Hint
Source
湖南省第九届大学生计算机程序设计竞赛
一看数据没敢用暴力,其实分析一下就知道是可以暴力的,y<=10^8,则x<1000,在此范围内暴力,由于a和b互换又是一种情况,所以最后*2
#include <iostream>#include <iomanip>#include<stdio.h>#include<string.h>#include<stack>#include<stdlib.h>#include<queue>#include<map>#include<math.h>#include<algorithm>#include<vector>#define mem(a,b) memset(a,b,sizeof(a))#define maxn 100000+5using namespace std;int main(){ int x,y,q=1; while(~scanf("%d%d",&x,&y)) { int sum=0; for(int i=x;i<1000;i++) { if(i*i*i/10>y)break; for(int j=i;j<1000;j++) { int t=(i*i*i)+(j*j*j)-3; if(t/10>y)break; if(t/10<=y&&t%10==0) sum++; } } sum*=2; printf("Case %d: %d\n",q++,sum); }}
0 0