アルゴリズム-最小公倍数と最大共通因子(最大公約数)を求めます.

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
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
締め括りをつける
これからはアルゴリズムのテーマをよくまとめて、注目してください.