boj 2800 [스택]

돌멩e·2022년 7월 15일
0

알고리즘 뿌수기

목록 보기
11/17
post-thumbnail

boj 2800

📍 Idea Logic

❗️ ERROR Point

📌 New Arrival

🔑 Solution


import itertools
ina = input()
count = 1
lenina = len(ina)
arrina = [0]*lenina
stacknum = []
stacknum2 = []
where = []
for i, arr in enumerate(ina):
    if arr == '(':
        arrina[i] = count
        stacknum.append(count)
        stacknum2.append(i)
        count += 1
    elif arr == ')':
        arrina[i] = stacknum.pop()
        where.insert(0, [i, stacknum2.pop()])
count -= 1

answer = []
case = []
for i in range(1, count+1):
    case.extend(list(itertools.combinations(where, i)))
for cas in case:
    tmpina = list(ina)
    for ca in cas:
        for c in ca:
            tmpina[c] = ' '
    answer.append(''.join(tmpina).replace(" ", ""))
answer = set(answer)
answer = list(answer)
for ai in sorted(answer):
    print(ai)
profile
돌이 되고 싶어요

0개의 댓글

관련 채용 정보