hnust 分蛋糕

问题 B: 分蛋糕

时间限制: 1 Sec  内存限制: 128 MB
提交: 2430  解决: 966
[提交][状态][讨论版]

题目描述

       今天是DK生日,由于DK的朋友很多,所以DK在蛋糕店定制了一个矩形的特大号蛋糕。但问题是DK想将蛋糕均匀分成正方形小块给每位朋友,并且使得正方形小块的面积尽可能最大,又能让其特大号矩形蛋糕恰好分完。给出特大号矩形蛋糕的两条边长分别为XY。求分得的最多块数。

 

输入

    输入数据有多组,第一行输入一个正整数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==0)
        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 0;
}
View Code

 

 
posted @ 2018-12-04 08:35  wandso  阅读(359)  评论(0编辑  收藏  举报