結果

問題 No.91 赤、緑、青の石
ユーザー sue_charo
提出日時 2017-08-07 00:26:23
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
WA  
実行時間 -
コード長 988 bytes
コンパイル時間 85 ms
コンパイル使用メモリ 12,800 KB
実行使用メモリ 11,008 KB
最終ジャッジ日時 2024-10-11 23:34:13
合計ジャッジ時間 13,222 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 6 WA * 22
権限があれば一括ダウンロードができます

ソースコード

diff #

# coding: utf-8
INF = 10 ** 20
MOD = 10 ** 9 + 7


def II(): return int(input())
def ILI(): return list(map(int, input().split()))


def read():
    R, G, B = ILI()
    return R, G, B


def solve(R, G, B):
    min_all = min(R, G, B)
    l_dif = [ele - min_all for ele in [R, G, B]]
    l_dif.sort(reverse=True)
    dif_1 = l_dif[0]
    dif_2 = l_dif[1]

    ans = min_all
    if dif_1 >= dif_2 * 3:
        ans += dif_2
        ans += (dif_1 - dif_2) // 5
    else:
        div, mod = divmod((dif_1 - dif_2), 2)
        ans += div
        dif_1 = dif_2 + mod - div
        dif_2 = dif_2 - div
        state = 0
        while dif_1 >= 3 or dif_2 >= 3:
            if state == 0:
                dif_1 -= 3
                dif_2 -= 1
            elif state == 1:
                dif_1 -= 3
                dif_2 -= 1
            ans += 1
            state = (state + 1) % 2

    return ans


def main():
    params = read()
    print(solve(*params))


if __name__ == "__main__":
    main()
0