結果

問題 No.3534 Make Many Fences
コンテスト
ユーザー 👑 loop0919
提出日時 2026-05-08 22:36:03
言語 PyPy3
(7.3.17)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
AC  
実行時間 253 ms / 1,000 ms
コード長 520 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 260 ms
コンパイル使用メモリ 85,120 KB
実行使用メモリ 81,536 KB
最終ジャッジ日時 2026-05-08 22:36:13
合計ジャッジ時間 3,538 ms
ジャッジサーバーID
(参考情報)
judge1_0 / judge3_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 9
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

def solve():
    N, M = [int(s) for s in input().split()]

    ans = 0

    fence = min(N // 4, M // 2)
    ans += fence * 3

    N -= 4 * fence
    M -= 2 * fence

    ok, ng = 0, 10**9
    while abs(ok - ng) > 1:
        mid = (ok + ng) // 2

        stick = ((mid * 2 + 3) // 4) * 2
        wood = 4 * mid

        if stick + wood <= N:
            ok = mid
        else:
            ng = mid

    ans += ok * 3
    print(ans)


if __name__ == "__main__":
    T = int(input())

    for _ in range(T):
        solve()
0