질문이 있습니다!

kudus66 Reply 9 years 33 weeks ago
다른 글에도 discuss글을 올렸는데, 이 글에도 올리게 되네요.. 제가 생각하는 모든 케이스는 다 잘 동작하는데 이 문제 역시도 wrong answer가 떠서요 ㅜㅜ 어떤 경우에서 wrong answer가 뜨는지 혹시 알 수 있을까요?
booksky Reply 9 years 33 weeks ago
안녕하세요. 조교 이은헌입니다. 제대로 된 답이 나오지 않는 이유는 종료 조건이 잘못 되었기 때문입니다. 예를 들어 ())()() 라는 입력값이 들어왔다고 가정해보겠습니다. 이 경우 이 문제의 답은 N가 맞습니다. 하지만 작성한 코드에서는 이걸 보고 N Y라고 출력하게 될 것입니다.
booksky Reply 9 years 33 weeks ago
그리고 이건 좀 별개의 이야기지만, 코드를 작성할 떄 break를 지나치게 사용하면 안 좋습니다. 코드의 가독성이 떨어지게 되고, 코드의 흐름을 따라가기도 어렵습니다. 꼭 필요한 경우에는 사용해야겠지만 작성하신 코드처럼 거의 모든 조건문에 break가 들어가게 되면 해독도 어렵고 코드에 문제가 생겼을 경우 어디에서 문제가 생겼는지 찾기도 어렵습니다.