每日一贴,今天的内容关键字为最大输入
Score
Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 749 Accepted Submission(s): 322
Problem Description
大家都晓得,pfz是“成电杰出先生”,在成电杰出先生的颁奖典礼上,lxh和pfz都没有听台上在说什么,而是在下面探讨当晚的美式足球竞赛,lxh预测说纽约巨人队今晚将会失掉11分,pfz马上说不可能。因为通常来讲美式足球竞赛的得分只有3分和7分两种情势,无论怎么得分都不可能失掉11分。想了一会以后,lxh发现其实11分以上的分数都是可以失掉,于是11就是最大的不可以失掉的分数。现在问题来了,如果竞赛的得分只有x分和y分两种情势,那么最大的不可以失掉的分数是多少呢?

Input
本题包括多组输入
每组输入2个整数x, y(2<=x, y<=10^8),x=y=0表示输入结束
每组输入2个整数x, y(2<=x, y<=10^8),x=y=0表示输入结束
Output
对于每组输入,输出一行,若存在一个最大的不可以失掉的分数,则输出此分数,否则输出Inf
Sample Input
3 7
2 2
0 0
Sample Output
11
Inf
Source
Recommend
lcy
思绪 输入a b
则ax2+by2-ax1-by1=1 即 a(x2-x1)-b(y2-y11)=1 因此 如果a b最大公约数不为1 则找不到 输出INF 其实找几组数据 也可以看出这个法则
然后写几组法则 可以发现不能表示的最大的数为a*b-a-b
注意 2 3 结果是1
#include<cstdio> __int64 gcd(__int64 a, __int64 b) { if (b == 0) return a; gcd(b, a%b); } int main(void) { __int64 a; __int64 b; while (scanf("%I64d%I64d", &a, &b), (a||b)) { if (gcd(a, b) == 1) { printf("%I64d\n", a*b-a-b); } else { printf("Inf\n"); } } return 0; }
文章结束给大家分享下程序员的一些笑话语录:
与女友分手两月有余,精神萎靡,面带菜色。家人介绍一女孩,昨日与其相亲。女孩果然漂亮,一向吝啬的我决定破例请她吃晚饭。
选了一个蛮贵的西餐厅,点了比较贵的菜。女孩眉开眼笑,与我谈得很投机。聊着聊着,她说:“我给你讲个笑话吧。”“ok”
“一只螳螂要给一只雌蝴蝶介绍对象,见面时发现对方是只雄蜘蛛。见面后螳螂问蝴蝶‘如何?’,‘他长的太难看了’,‘别看人家长的丑,人家还有网站呢’。”
“呵呵………”我笑。忽然她问:“你有网站吗?”
---------------------------------
原创文章 By
最大和输入
---------------------------------