結果
問題 |
No.91 赤、緑、青の石
|
ユーザー |
![]() |
提出日時 | 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 |
ソースコード
# 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()