问题 B: 分蛋糕
时间限制: 1 Sec 内存限制: 128 MB
提交: 2430 解决: 966
[提交][状态][讨论版]
题目描述
今天是DK生日,由于DK的朋友很多,所以DK在蛋糕店定制了一个矩形的特大号蛋糕。但问题是DK想将蛋糕均匀地分成正方形小块给每位朋友,并且使得正方形小块的面积尽可能最大,又能让其特大号矩形蛋糕恰好分完。给出特大号矩形蛋糕的两条边长分别为X,Y。求分得的最多块数。
输入
输入数据有多组,第一行输入一个正整数N<=1000为数据组数,接下来一行为两个正整数数X和Y。(1<=X,Y<=10000);
输出
对于每组X,Y,输出分得的最多的块数。每组输出占一行。
样例输入
2
2 5
2 8
样例输出
10
4 求出最大公约数,然后用最小公倍数除以最小公约数。
#include <cstdio>
int gcdd(int a,int b)
{
if(b==)
return a;
return gcdd(b,a%b);
}
int main()
{
int t,x,y,a,b,c;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&x,&y);
if(x<y) {c=x;x=y;y=c;}
c=gcdd(x,y);
printf("%d\n",x*y/c/c);
}
return ;
}