2016年1月21日 星期四

d693: 最小公倍數

內容 :
 這題並不是要你算兩個數的最小公倍數,
 因為大家都知道:
      ( from wiki )
 It is too easy!
 想請大家算出 n 個數的最小公倍數! 
輸入說明 : 
 每組測試資料兩行
 第一行有一整數 N ( 2 ≤ N ≤ 10 )
 第二行包含 N 個正整數 ( 每個數 ≤ 100 )
 當 N 為 0 時請結束程式 
輸出說明 : 
 每組測試資料輸出一行
 請輸出 N 個正整數的最小公倍數
 答案保證小於 231-1 
範例輸入 : help
2
3 5
0
範例輸出:
15
提示 : 
 ¤ 感謝 asas 指正範例測資的錯誤
標籤:
出處: 
(管理:example)


import java.util.Scanner;

public class d693 {                                    //兩兩公倍數 相乘

public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
int n=sc.nextInt();   
if(n==0) break;
            double a,answer=1;
   for(int i=0;i<n;i++){
  a=sc.nextDouble();
  answer=answer*a/GCD(a,answer);   
   }    
   System.out.println((int)answer);    
}
}
static double GCD(double a,double b){
if(a%b==0)
return b;
else
return GCD(b,a%b);
}

}

沒有留言:

張貼留言