結果

問題 No.3112 Decrement or Mod Game
ユーザー Rira
提出日時 2025-04-19 18:07:58
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 793 bytes
コンパイル時間 785 ms
コンパイル使用メモリ 67,372 KB
実行使用メモリ 7,844 KB
最終ジャッジ日時 2025-04-19 18:08:01
合計ジャッジ時間 2,529 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 45 WA * 20
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <iostream>
using namespace std;

string winner(long long a, long long b) {
    int turn = 0; // 0: Alice, 1: Bob

    while (true) {
        if (a < b) {
            swap(a, b);
            turn ^= 1;  // 手番交代
        }

        if (b == 0) {
            // 相手の数が0 → このターンのプレイヤーが負け(=相手が勝ち)
            return (turn == 0) ? "Bob" : "Alice";
        }

        if (a / b >= 2) {
            // 自分の数を一気に減らせるのでこのターンのプレイヤーが勝ち
            return (turn == 0) ? "Alice" : "Bob";
        }

        // 次の状態へ遷移
        a = a % b;
        turn ^= 1;
    }
}

int main() {
    long long A, B;
    cin >> A >> B;
    cout << winner(A, B) << endl;
    return 0;
}
0