kbear   4년 전

안녕하세요. 

문제점을 찾아내려고 질문 게시판에 답변달아주신 반례 들을 다 정상 처리하는데도 틀려서 질문 드립니다. 

res 벡터는 결과를 저장하기 위한 벡터로, 마지막 문자의 NGE부터 반대 순서로 결과를 저장합니다. (출력 시 벡터 마지막 위치부터 거꾸로 출력) 

입력은 벡터 v 와 스택 s에 모두 저장합니다. 

마지막 입력되는 숫자는 항상 NGE 가 -1 일 것이기 때문에  res 벡터에 -1 을 push_back 하고, 입력 숫자들을 순서대로 푸시한 스택 s에서 pop을 한번 수행합니다. 

// line 26, 27 


그 후 NGE를 계산하기 위해 비교 연산을 통해 각 인덱스에 해당하는 NGE를 계산하도록 하였습니다. 


어떤 부분에서 오류가 있는지 제 힘으로 더이상 찾을 수 없어서 도움 요청합니다 ㅠㅠ

pichulia   4년 전

지나가다 댓글도 없고 아직 못푸셨길래 댓글 달아봅니다.

의외로 논리가 괜찮아서 깜빡 속을 뻔했지만

39,40번째 줄에 대한 논리가 부족합니다.

여기 좋은 반례가 있습니다....

덤으로 지금 스택을 쓰신 이유가 전혀 없는것 같습네다. comp값은 결국 v.at(i-2)랑 똑같으니까요

kbear   4년 전

답변 정말 감사합니다! 

조언해주신 부분이 확실히 문제였습니다! 

댓글을 작성하려면 로그인해야 합니다.