相遇周期

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 2084    Accepted Submission(s): 1069

Problem Description

2007年3月26日,在中俄两国元首的见证下,中国国家航天局局长孙来燕与俄罗斯联邦航天局局长别尔米诺夫共同签署了《中国国家航天局和俄罗斯联邦航天局关于联合探测火星-火卫一合作的协议》,确定中俄双方将于2009年联合对火星及其卫星“火卫一”进行探测。

而卫星是进行这些探测的重要工具,我们的问题是已知两颗卫星的运行周期,求它们的相遇周期。

Input

输入数据的第一行为一个正整数T, 表示测试数据的组数. 然后是T组测试数据. 每组测试数据包含两组正整数,用空格隔开。每组包含两个正整数,表示转n圈需要的天数(26501/6335,表示转26501圈要6335天),用‘/‘隔开。

Output

对于每组测试数据, 输出它们的相遇周期,如果相遇周期是整数则用整数表示,否则用最简分数表示。

Sample Input

2
26501/6335 18468/42
29359/11479 15725/19170

Sample Output

81570078/7 5431415

思路:求两个分式的最小公倍数,如n/a,m/b的最小公倍数  先将分母通分 为:nb/(a*b)  ma/(a*b)   然后求通分后两个分子的最小公倍数lcm

那么结果就是:lcm/(a*b)      此题:若lcm%(a*b)==0  直接lcm/(a*b)   否则lcm/gcd(lcm,a*b) / (a*b)/gcd(lcm,a*b)

#include<cstdio>
int Gcd(long long a,long long b)//由于参数a,b没有用龙龙,一直错
{
    return b==0?a:Gcd(b,a%b);
}
int main()
{
    long long n,m,a,b;
    int  T;
    long long  lcm;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%I64d/%I64d",&n,&a);
        scanf("%I64d/%I64d",&m,&b);
        lcm=(n*a*b*m)/Gcd(n*b,m*a);
        if(lcm%(a*b)==0)
            printf("%I64d\n",lcm/(a*b));
        else
            printf("%I64d/%I64d\n",lcm/Gcd(lcm,a*b),(a*b)/Gcd(lcm,a*b));

    }
}

时间: 2024-08-24 00:35:52

相遇周期的相关文章

杭电ACM 1713 相遇周期

相遇周期 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3382    Accepted Submission(s): 1734 Problem Description 2007年3月26日,在中俄两国元首的见证下,中国国家航天局局长孙来燕与俄罗斯联邦航天局局长别尔米诺夫共同签署了<中国国家航天局和俄罗斯联邦航天局关于联合探测火星-火卫

hdu 1713 相遇周期 (GCD &amp; LCM)

相遇周期 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1943    Accepted Submission(s): 1000 Problem Description 2007年3月26日,在中俄两国元首的见证下,中国国家航天局局长孙来燕与俄罗斯联邦航天局局长别尔米诺夫共同签署了<中国国家航天局和俄罗斯联邦航天局关于联合探测火星-火

hdu acm-step 2.1.3 相遇周期

本题题意:给出两个卫星分数形式的速度,求它们的相遇周期. #include <cstdio> #define ll long long using namespace std; ll gcd(ll a,ll b) { ll r; while(b) { r = a%b; a = b; b = r; } return a; } ll lcm(ll a,ll b) { return a*b/gcd(a,b); } int main() { int T; scanf("%d",&a

HDU 1713 -相遇周期

相遇周期 Time Limit : 1000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other) Total Submission(s) : 12   Accepted Submission(s) : 3 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description 2007年3月26日,在中俄两国元首的见证下,中国国家航天局局长孙

HDU 1713 最小公倍数与最大公约数的问题 相遇周期

欢迎参加——BestCoder周年纪念赛(高质量题目+多重奖励) 相遇周期 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2465    Accepted Submission(s): 1236 Problem Description 2007年3月26日,在中俄两国元首的见证下,中国国家航天局局长孙来燕与俄罗斯联邦航天局局长别尔米诺夫

HDU1713相遇周期

Description 2007年3月26日,在中俄两国元首的见证下,中国国家航天局局长孙来燕与俄罗斯联邦航天局局长别尔米诺夫共同签署了<中国国家航天局和俄罗斯联邦航天局关于联合探测火星-火卫一合作的协议>,确定中俄双方将于2009年联合对火星及其卫星“火卫一”进行探测. 而卫星是进行这些探测的重要工具,我们的问题是已知两颗卫星的运行周期,求它们的相遇周期. Input 输入数据的第一行为一个正整数T, 表示测试数据的组数. 然后是T组测试数据. 每组测试数据包含两组正整数,用空格隔开.每组包

数学(扩展欧几里得算法):HDU 5114 Collision

Matt is playing a naive computer game with his deeply loved pure girl. The playground is a rectangle with walls around. Two balls are put in different positions inside the rectangle. The balls are so tiny that their volume can be ignored. Initially,

hdu1713

相遇周期 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 2286 Accepted Submission(s): 1073   Problem Description 2007年3月26日,在中俄两国元首的见证下,中国国家航天局局长孙来燕与俄罗斯联邦航天局局长别尔米诺夫共同签署了<中国国家航天局和俄罗斯联邦航天局关于联合探测火星-火卫一合作

C语言程序设计100例之(10):最大公约数

例10        最大公约数 问题描述 有三个正整数a,b,c(0<a,b,c<10^6),其中c不等于b.若a和c的最大公约数为b,现已知a和b,求满足条件的最小的c. 输入数据 第一行输入一个n,表示有n组测试数据,接下来的n行,每行输入两个正整数a,b. 输出格式 输出对应的c,每组测试数据占一行. 输入样例 2 6 2 12 4 输出样例 4 8 (1)编程思路. 利用转辗相除法求两个整数的最大公约数.例如,求整数m=48,n=18两个数的最大公约数的方法如左图所示. 具体做法是: