アルゴリズム-最小公倍数と最大共通因子(最大公約数)を求めます.
599 ワード
背景
朝にテンセントの筆記試験を終えたばかりです.血に虐待されたような気がします.数学の方法は全部忘れました.
1.最大共通因子(最大公約数)を求める
転々相の割り算を利用してもユークリッドアルゴリズムと呼ばれます.
例えば、(5、6)を求めます.
∵5÷6=0(余5)
∴(5,6)=(6,5)
∵6÷5=1(余1)
∴(6,5)=(5,1)
∵5÷1=5(余0)
∴(1,0)=1
∴(5,6)=1
二つの数を掛け合わせて、最大公約数を除いてください.以下の例は、複数の数の最小公倍数を求めることができる.
これからはアルゴリズムのテーマをよくまとめて、注目してください.
朝にテンセントの筆記試験を終えたばかりです.血に虐待されたような気がします.数学の方法は全部忘れました.
1.最大共通因子(最大公約数)を求める
転々相の割り算を利用してもユークリッドアルゴリズムと呼ばれます.
例えば、(5、6)を求めます.
∵5÷6=0(余5)
∴(5,6)=(6,5)
∵6÷5=1(余1)
∴(6,5)=(5,1)
∵5÷1=5(余0)
∴(1,0)=1
∴(5,6)=1
public static long LCM(int a,int b){
return b==0?a:LCM(b,a%b);
}
2.最小公倍数を求める二つの数を掛け合わせて、最大公約数を除いてください.以下の例は、複数の数の最小公倍数を求めることができる.
public static int LCM(int... in){
int length=in.length;
int min=1;
for(int i=0;i
締め括りをつけるこれからはアルゴリズムのテーマをよくまとめて、注目してください.