結果

問題 No.141 魔法少女コバ
ユーザー YamaKasaYamaKasa
提出日時 2018-07-17 19:44:43
言語 Java21
(openjdk 21)
結果
WA  
実行時間 -
コード長 1,182 bytes
コンパイル時間 2,052 ms
コンパイル使用メモリ 73,460 KB
実行使用メモリ 57,884 KB
最終ジャッジ日時 2023-08-17 12:09:39
合計ジャッジ時間 16,972 ms
ジャッジサーバーID
(参考情報)
judge12 / judge13
このコードへのチャレンジ(β)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 122 ms
55,508 KB
testcase_01 WA -
testcase_02 WA -
testcase_03 AC 122 ms
55,616 KB
testcase_04 AC 125 ms
55,840 KB
testcase_05 AC 125 ms
55,892 KB
testcase_06 AC 125 ms
55,352 KB
testcase_07 AC 124 ms
56,020 KB
testcase_08 AC 124 ms
56,328 KB
testcase_09 AC 124 ms
55,600 KB
testcase_10 AC 124 ms
55,552 KB
testcase_11 AC 124 ms
55,892 KB
testcase_12 AC 125 ms
56,188 KB
testcase_13 AC 124 ms
54,256 KB
testcase_14 AC 123 ms
56,016 KB
testcase_15 AC 124 ms
55,780 KB
testcase_16 AC 124 ms
55,924 KB
testcase_17 AC 123 ms
55,840 KB
testcase_18 AC 125 ms
56,164 KB
testcase_19 AC 124 ms
55,876 KB
testcase_20 AC 125 ms
55,908 KB
testcase_21 AC 124 ms
55,500 KB
testcase_22 AC 125 ms
55,732 KB
testcase_23 AC 125 ms
55,912 KB
testcase_24 AC 124 ms
56,240 KB
testcase_25 AC 124 ms
56,060 KB
testcase_26 AC 126 ms
56,016 KB
testcase_27 AC 125 ms
56,144 KB
testcase_28 AC 125 ms
55,920 KB
testcase_29 AC 124 ms
55,640 KB
testcase_30 AC 124 ms
55,352 KB
testcase_31 AC 123 ms
55,916 KB
testcase_32 AC 123 ms
55,912 KB
testcase_33 AC 123 ms
55,852 KB
testcase_34 AC 124 ms
54,076 KB
testcase_35 AC 123 ms
55,780 KB
testcase_36 AC 122 ms
55,660 KB
testcase_37 AC 123 ms
56,132 KB
testcase_38 AC 124 ms
55,900 KB
testcase_39 AC 122 ms
55,996 KB
testcase_40 AC 123 ms
55,672 KB
testcase_41 AC 122 ms
55,920 KB
testcase_42 AC 122 ms
55,656 KB
testcase_43 AC 124 ms
56,376 KB
testcase_44 AC 123 ms
55,564 KB
testcase_45 AC 124 ms
55,424 KB
testcase_46 AC 123 ms
55,544 KB
testcase_47 AC 124 ms
55,284 KB
testcase_48 AC 125 ms
55,812 KB
testcase_49 AC 124 ms
55,624 KB
testcase_50 AC 124 ms
55,580 KB
testcase_51 AC 123 ms
55,844 KB
testcase_52 AC 122 ms
55,644 KB
testcase_53 AC 125 ms
56,248 KB
testcase_54 AC 121 ms
55,744 KB
testcase_55 AC 123 ms
56,076 KB
testcase_56 AC 122 ms
55,620 KB
testcase_57 AC 123 ms
56,016 KB
testcase_58 AC 123 ms
56,024 KB
testcase_59 AC 124 ms
56,116 KB
testcase_60 AC 123 ms
55,436 KB
testcase_61 AC 124 ms
55,708 KB
testcase_62 AC 124 ms
56,344 KB
testcase_63 AC 124 ms
55,636 KB
testcase_64 AC 125 ms
56,224 KB
testcase_65 WA -
testcase_66 AC 123 ms
56,144 KB
testcase_67 AC 123 ms
55,952 KB
testcase_68 AC 124 ms
55,692 KB
testcase_69 AC 124 ms
56,128 KB
testcase_70 AC 125 ms
55,936 KB
testcase_71 AC 125 ms
56,024 KB
testcase_72 AC 125 ms
55,504 KB
testcase_73 AC 123 ms
56,008 KB
testcase_74 AC 124 ms
56,092 KB
testcase_75 AC 124 ms
56,000 KB
testcase_76 AC 123 ms
55,508 KB
testcase_77 AC 123 ms
55,752 KB
testcase_78 AC 126 ms
53,832 KB
testcase_79 AC 123 ms
55,640 KB
testcase_80 AC 123 ms
56,164 KB
testcase_81 AC 122 ms
55,548 KB
testcase_82 AC 123 ms
55,456 KB
testcase-evil-0.txt AC 122 ms
55,496 KB
testcase-evil-1.txt WA -
testcase-evil-2.txt WA -
testcase-evil-3.txt WA -
testcase-evil-4.txt WA -
testcase-evil-5.txt AC 126 ms
56,064 KB
testcase-evil-6.txt AC 124 ms
56,040 KB
testcase-evil-7.txt WA -
testcase-evil-8.txt AC 123 ms
55,484 KB
testcase-evil-9.txt AC 122 ms
55,812 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int N = scan.nextInt();
		int M = scan.nextInt();
		int min = Math.min(N, M);
		int max = Math.max(N, M);
		scan.close();
		if(N == M) {
			System.out.println(0);
			System.exit(0);
		}
		// m <= n
		// ユークリッドの互除法
		int n = max;
		int m = min;
		int r = -1;
	    while (r != 0) {
	        r = n % m;
	        n = m;
	        m = r;
	    }
	    int a = N / n;
	    int b = M / n;
	    // M / N = a / b
	    int cnt = 0;
	    int d1, n1;
	    if(a > b) {
	    	d1 = b;
	    	n1 = a;
	    }else {
	    	d1 = a;
	    	n1 = b;
	    	cnt ++;
	    }

	    if(n1 == 1) {
	    	cnt += d1;
	    	System.out.println(cnt);
	    	System.exit(0);
	    }

	    int d2, n2;
	    int cnt1 = 0;
	    while(n1 != 1) {
	    	int t = n1 / d1;
	    	cnt1 ++;
	    	cnt += t;
	    	//System.out.println("t " + t + " cnt " + cnt);
	    	//System.out.println(n1 + " " + d1);
	    	d2 = n1 % d1;
	    	n2 = d1;
	    	n1 = n2;
	    	d1 = d2;
	    	if(d1 == 1) {
	    		cnt += n1;
	    		break;
	    	}
	    }

	    System.out.println(cnt + cnt1 - 1);


	}
}
0