close

題目概要:

計算出題目規定範圍內的GCD所有總和。

解題方向:

使用輾轉相除法求出GCD,並全部加總即是答案。

程式碼:

//Java
import java.util.Scanner;
class uva11417{
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
int num;
while((num=sc.nextInt())!=0){
int ans=0;
for(int i=1;i<num;i++){
for(int j=i+1;j<=num;j++){
ans+=gcd(i,j);
}
}
System.out.println(ans);
}
}
public static int gcd(int a,int b){
while(a!=0 && b%a!=0){
int temp=b;
b=a;
a=temp%a;
}
return a;
}
}
view raw uva11417.java hosted with ❤ by GitHub

arrow
arrow
    文章標籤
    Java
    全站熱搜
    創作者介紹
    創作者 a7069810 的頭像
    a7069810

    紀錄自己的程式人生

    a7069810 發表在 痞客邦 留言(0) 人氣()