程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> HDU 1713

HDU 1713

編輯:關於C++

 

相遇周期

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日,在中俄兩國元首的見證下,中國國家航天局局長孫來燕與俄羅斯聯邦航天局局長別爾米諾夫共同簽署了《中國國家航天局和俄羅斯聯邦航天局關於聯合探測火星-火衛一合作的協議》,確定中俄雙方將於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

 

 

題解:水題。

參考代碼:

 

#include
int  gcd(int x,int y)  
{  
    while(x!=y)  
    {  
        if(x>y)  
        x=x-y;  
        else  
         y=y-x;  
    }  
    return x;  
}  
int lcm(int a,int b)
{
	return a/gcd(a,b)*b;
}
int main()
{
	int t;
	scanf(%d,&t);
	while(t--)
	{
		int a,b,c,d,p;
		scanf(%d/%d,&a,&b);
		p=gcd(a,b);//這行不能與下一行合並。
		a/=p;
		b/=p;
		scanf(%d/%d,&c,&d);
		p=gcd(c,d);
		c/=p;
		d/=p;
		if(gcd(b,d)==1)
		    printf(%d
,lcm(a,c));
        else 
            printf(%d/%d
,lcm(a,c),gcd(b,d));
	}
	return 0;
}


 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved