首页 > 学院 > 开发设计 > 正文

HDU2504

2019-11-06 06:04:40
字体:
来源:转载
供稿:网友

又见GCD

Time Limit: 1000/1000 MS (java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 18109    Accepted Submission(s): 7542PRoblem Description有三个正整数a,b,c(0<a,b,c<10^6),其中c不等于b。若a和c的最大公约数为b,现已知a和b,求满足条件的最小的c。 Input第一行输入一个n,表示有n组测试数据,接下来的n行,每行输入两个正整数a,b。 Output输出对应的c,每组测试数据占一行。 Sample Input
26 212 4 Sample Output
4

8

#include<stdio.h>#include<algorithm>#include<iostream>using namespace std;int gcd(int a,int b){    if(a==0)    {        return b;    }    else    {        return gcd(b % a,a);    }}int main(){    int n;    scanf("%d",&n);    while(n--)    {        int a,b,c,i;        scanf("%d%d",&a,&b);        for( i=b+b;i<=a*b;i+=b)        {            if(gcd(a,i)==b)            {                break;            }        }        printf("%d/n",i);    }    return 0;}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表