BRACKETS2 를 루비로 풀어보고 있는데, 어느 부분에서 오답처리가 되는지 도무지 모르겠네요 ㅠㅠ 조언 부탁드립니다
코드와 알고리즘은 아래 있습니다
#입력받기n=gets.chomp.to_inewarr=Array.new1.upto(n)donewarr<<gets.chomp.to_send#고정값 선언opener=['(','[','{']set={'('=>')','['=>']','{'=>'}'}#검사newarr.eachdo|array|#내부 변수 초기화condition1=truestack=Array.newdemo=Array.newdemo=array.split(//)#검사demo.eachdo|ss|ifopener.include?ssstack<<ss#괄호가 여는 것이면 스택에 쌓는다elsifstack==[]#닫는 것인데 스택이 비어있으면 falsecondition1=falseelsifset[stack[-1]]==ss#닫는 것이 가장 마지막 스택의 여는 값과 매치되면 스택에서 괄호를 지운다stack=stack-[stack[-1]]else#위의 case에 해당하지 않으면 falsecondition1=falseendendunlessstack==[]#stack 에 남은 값이 없어야함condition1=falseendifcondition1==true#컨디션 검사 및 출력 puts"YES"elseputs"NO"endend
dwno108
BRACKETS2 를 루비로 풀어보고 있는데, 어느 부분에서 오답처리가 되는지 도무지 모르겠네요 ㅠㅠ 조언 부탁드립니다
코드와 알고리즘은 아래 있습니다
9년 전