結果

問題 No.592 括弧の対応 (2)
ユーザー cleanttedcleantted
提出日時 2017-11-10 22:32:14
言語 Python3
(3.12.2 + numpy 1.26.4 + scipy 1.12.0)
結果
AC  
実行時間 242 ms / 5,000 ms
コード長 384 bytes
コンパイル時間 210 ms
コンパイル使用メモリ 10,528 KB
実行使用メモリ 23,096 KB
最終ジャッジ日時 2023-08-16 03:12:01
合計ジャッジ時間 1,628 ms
ジャッジサーバーID
(参考情報)
judge13 / judge14
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 14 ms
7,804 KB
testcase_01 AC 242 ms
18,708 KB
testcase_02 AC 233 ms
23,096 KB
testcase_03 AC 226 ms
16,340 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

N = int(input())
S = input()

stack = [0] * N
depth = {}
p = 0
for i, s in enumerate(S):
    if s == "(":
        depth[p] = i    #depth=pには i番目のかっこがいる
        p += 1
    elif s == ")":
        p -= 1
        v = depth.pop(p) # 同じ深さのかっこの位置を返す
        stack[i] = v
        stack[v] = i

for i in range(N):
    print(stack[i] + 1)
    
0