BRACKETS2 오답 질문입니다. devhackin 안녕하세요. 문제를 풀다 답이 안나와서 힌트라도 얻을 수 있을까해서 질문드립니다. 아래 코드를 답안제출하면 오답이라고 나오는데 여러 번 테스트케이스를 넣고 실행을 해도 정답이 나오지 않아서 답답합니다. 알고리즘 입력문자열을 뒤에서부터 닫기 브라켓들을 스택에 넣고, 열기 브라켓들이 보이면 스택에서 꺼내서 비교하는 방식으로 만들었습니다. 테스트 해본 케이스 { } [] ((())) ({}) ([}) 코드에 문제가 있는지 봐주시면 감사하겠습니다. BRACKETS2 brackets = [('(', ')'), ('{', '}'), ('[', ']')] result = '' testCase = input() if 1 <= testCase <= 100: for _ in range(testCase): checkBracket = [] inputList = list(raw_input()) for x in range(len(inputList)): for i in range(len(brackets)): for j in brackets[i]: if inputList[x] == j: checkBracket.append([i, brackets[i].index(j)]) if checkBracket[-1][1] == 0 or len(checkBracket) == 1 or len(checkBracket) % 2 != 0: result = 'NO' else: rBrackets = [] lBrackets = [] for t in range(len(checkBracket)-1, -1, -1): if checkBracket[t][1] == 1: rBrackets.append(checkBracket[t]) else: if len(rBrackets) != 0: if rBrackets[-1][0] == checkBracket[t][0]: del rBrackets[-1] else: lBrackets.append(checkBracket[t]) else: result = 'NO' break if result != 'NO': if len(rBrackets) == 0 and len(lBrackets) == 0: print 'YES' else: print 'NO' else: print result 8년 전
2개의 댓글이 있습니다. zeroion result 가 리셋이 안되는거 같네요~ 8년 전 link devhackin zeroion// 엄청납니다. 리셋되게 수정하니까 정답이 됐네요~ 감사합니다. 8년 전 link 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
devhackin
안녕하세요. 문제를 풀다 답이 안나와서 힌트라도 얻을 수 있을까해서 질문드립니다.
아래 코드를 답안제출하면 오답이라고 나오는데 여러 번 테스트케이스를 넣고 실행을 해도 정답이 나오지 않아서 답답합니다.
알고리즘
입력문자열을 뒤에서부터 닫기 브라켓들을 스택에 넣고,
열기 브라켓들이 보이면 스택에서 꺼내서 비교하는 방식으로 만들었습니다.
테스트 해본 케이스
코드에 문제가 있는지 봐주시면 감사하겠습니다.
BRACKETS2
8년 전