hyungjin   2년 전

안녕하세요.

테스트 케이스를 1로 해놓고 돌리면 제대로 된 결과가 나오는데, 테스트 케이스의 수가 많아지면 결과 값이 이상하게 나옵니다!

100 32

2 9 2 4 1 8 8 5 4 6 3 4 6 2 8 2 3 6 6 2 2 8 2 5 8 9 6 2 6 1 2 8 1 4 9 8 2 5 3 3 1 3 4 6 5 1 7 5 6 1 4 6 6 5 1 5 3 6 4 8 7 6 4 5 7 3 1 6 8 2 7 6 4 8 3 8 8 7 1 5 6 5 8 2 9 8 4 2 3 8 8 7 4 2 9 8 5 9 2 1

테스트 케이스를 1로 위의 입력 값을 실행하면 제대로 된 결과 값 100이 나옵니다. 그런데, 테스트 케이스를 4 이상으로 해놓고 위의 값을 입력 값으로 넣으면 91이란 결과 값이 나옵니다..

위의 입력 값 말고도 여러 입력 값에서 해당 문제가 발생합니다.. 혹시 이유를 알 수 있을까요??

gurugeonu   2년 전

queue의 empty 함수는 queue를 비워주는 함수가 아닙니다. queue가 비어있으면 1, 비어있지 않으면 0을 반환합니다. while (!q.empty()) q.pop(); 등으로 queue를 비울 수 있습니다

hyungjin   2년 전

그 부분을 확인하지 못했네요ㅎㅎ

수정해서 실행하니 결과가 제대로 나옵니다! 

답변 갑사합니다~

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