一次生日Party可能有p人或者q人参加,现准备有一个大蛋糕.问最少要将蛋糕切成多少块(每块大小不一定相等),才能使p人或者q人出席的任何一种情况,都能平均将蛋糕分食

来源:互联网 发布:最早的网络竞技游戏 编辑:程序博客网 时间:2024/04/30 16:17

//可以看成将一个圆切割,第一次要切割成p份,第二次要切割成q份,两者肯定有重合的切割边

重合的切割边数即为p与q的最小公约数,然后用p与q的和减去最小公约数即可//

#include<stdio>

int gcd(int a,int b) {
return b?gcd(b,a%b):a;
}
int main() {
int p,q;
while(scanf("%d %d",&p,&q)!=EOF)
printf("%d\n",p+q-gcd(p,q));
return 0;
}