結果

問題 No.161 制限ジャンケン
ユーザー lam6er
提出日時 2025-03-20 21:06:57
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 36 ms / 5,000 ms
コード長 772 bytes
コンパイル時間 580 ms
コンパイル使用メモリ 82,424 KB
実行使用メモリ 53,896 KB
最終ジャッジ日時 2025-03-20 21:07:07
合計ジャッジ時間 1,700 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 16
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

G, C, P = map(int, input().split())
S = input().strip()
s_g = S.count('G')
s_c = S.count('C')
s_p = S.count('P')
# Step 1: Calculate wins
p_win = min(s_g, P)
points = 3 * p_win
remaining_p = P - p_win
remaining_g_s = s_g - p_win
g_win = min(s_c, G)
points += 3 * g_win
remaining_g = G - g_win
remaining_c_s = s_c - g_win
c_win = min(s_p, C)
points += 3 * c_win
remaining_c = C - c_win
remaining_p_s = s_p - c_win
# Step 2: Calculate draws
draw_g = min(remaining_g_s, remaining_g)
points += draw_g
remaining_g -= draw_g
remaining_g_s -= draw_g
draw_c = min(remaining_c_s, remaining_c)
points += draw_c
remaining_c -= draw_c
remaining_c_s -= draw_c
draw_p = min(remaining_p_s, remaining_p)
points += draw_p
remaining_p -= draw_p
remaining_p_s -= draw_p
print(points)
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0