結果

問題 No.141 魔法少女コバ
ユーザー YamaKasa
提出日時 2018-07-17 19:51:39
言語 Java
(openjdk 23)
結果
AC  
実行時間 121 ms / 5,000 ms
コード長 1,186 bytes
コンパイル時間 1,842 ms
コンパイル使用メモリ 77,524 KB
実行使用メモリ 41,684 KB
最終ジャッジ日時 2024-11-26 08:48:24
合計ジャッジ時間 14,215 ms
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 93
権限があれば一括ダウンロードができます

ソースコード

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(d1 == 1) {
cnt += n1 - 1;
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);
}
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0