結果
| 問題 | No.3143 Colorless Green Parentheses Sleep Furiously |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-05-16 21:59:15 |
| 言語 | Python3 (3.14.3 + numpy 2.4.4 + scipy 1.17.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,054 bytes |
| 記録 | |
| コンパイル時間 | 607 ms |
| コンパイル使用メモリ | 21,540 KB |
| 実行使用メモリ | 113,588 KB |
| 最終ジャッジ日時 | 2026-07-10 19:06:33 |
| 合計ジャッジ時間 | 16,107 ms |
|
ジャッジサーバーID (参考情報) |
judge3_0 / judge2_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 20 WA * 1 RE * 28 |
ソースコード
N, K = map(int, input().split())
S = list(input())
A = [1 if S[i] == '(' else -1 for i in range(N)]
def c_problem():
wa = 0
for i in range(N):
wa += A[i]
if wa < 0:
return False
return wa == 0
if not c_problem():
exit(print("No"))
lr = []
l = 0
wa = 0
for i in range(N):
wa += A[i]
if wa == 0:
lr.append((l, i + 1))
l = i + 1
mn = sum([(r - l) // 2 + 1 for l, r in lr])
# mx = sum([(r - l) for l, r in lr]) + 2
if mn <= K:
L = K - mn
print("Yes")
ans = []
for l, r in lr:
if ans :
ans.append('+')
d = min((r - l) // 2 - 1, L)
L -= d
for i in range((r - l) // 2):
ans.append(S[i + l])
ans.append('1+')
ans.append('1')
for i in range((r - l) // 2):
ans.append(S[i + (r + l) // 2])
if i + 1 < d:
ans.append('+1')
for _ in range(L):
ans.append('+1')
assert eval("".join(ans)) == K
print("".join(ans))
else:
print("No")