조건을 몇개 추가해야할거 같습니다.
지금의 조건으로는 약간 빈약한거 같습니다... 어떤 오해가 생길 수 있는지 대략적으로 아래 서술해보면...
3-1. 괄호(), bracket[], braces{} 연산자는 여는 연산자와 닫는 연산자의 쌍이 서로 맞아야한다. 예를 들어 (]은 안되고, (() 도 안된다.
3-2. 다시말해 "", '', /* */ 연산자는 여는 연산자와 닫는 연산자의 쌍이 서로 맞을 필요는 없다. 예를 들어 /* 는 된다.
그리고 2번 조건의 \위치는 닫는 연산자의 "앞부분"에 존재한다고 명시해주었으면 좋겠습니다...
예를 들어 (" '''''' \\"(")/* 은 Y가 나옵니다... 두번째 " 의 바로 앞에 \가 있기 때문에 닫는 연산자로 취급을 하지 않았다는거죠..뭐 이런 식으로...
좋은 지적 감사하고, 3-1은 바로 반영했습니다. 3-2의 경우는 문제가 복잡해질 경우가 있어서 '바로 앞부분' 반영했습니다.
음...3-2는 제가 만든 조건이 아니라... 현제 데이터가 저런 형식입니다ㅋㅋㅋ
그래서
6.서로 짝을 가진 모든 연산자들의 여는 연산자의 개수와 닫는 연산자의 개수는 일치되어야 한다. (추가조건)
이 문장은 맞는 말이 아닙니다 ㅠㅠ
여는 연산자와 닫는 연산자의 개수가 일치해야하는건 괄호(){}[] 얘네들 뿐이에요...현재 제가 맞은 소스코드상...데이터가...그렇습니다...
아하! 이때의 답변이 오늘 수정한 테스트 데이터에 대한 내용 이였군요.. 오늘에서야 테스트 데이터가 틀린것을 발견했습니다!! (미안해요)