smiley_bin   4년 전

이미 올라온 질문의 반례도 해보았는데 성공했습니다. 어떤 반례가 또 있을까요 !?

sait2000   4년 전

코드가 틀릴 수 있는 방법은 매우 다양하기 때문에 틀린 코드라도 올라온 질문에 있는 모든 반례가 통과할 수 있습니다. (사실, 꽤 흔한 모양입니다. 다들 그렇게 말씀하시는 거 보면) 그러면 자기 코드는 남들과는 다른 또다른 방법으로 틀렸다고 생각하시면 됩니다.

각설하고 테스트케이스에 대한 설명을 좀 하겠습니다. 문제를 잘못 해석하면 첫번째 줄이 거짓이고 1번이 1루수인 가능성만 있는 것 같지만, 진짜 가능한 모든 경우는 다음과 같습니다.

  • 1째 줄이 거짓이고 1번이 1루수
  • 2째 줄이 거짓이고 8번이 1루수
  • 2째 줄이 거짓이고 9번이 1루수

세 경우 모두 거짓말 하는 사람도 1명이고 1루수도 한 명이고 9개의 진술과도 어긋남이 없는 상황임을 알 수 있습니다. 따라서 1루수일지도 모르는 사람이 1번 8번 9번 총 3명이므로 이 경우의 출력은 -1이 돼야 합니다.

smiley_bin   4년 전

질문마다 좋은 답변과 반례 주셔서 감사합니다! 

cequala   3년 전

여기 sait님 답변은 FAQ로 등록해도 될 것 같습니다ㅎㅎ 저도 좋은 답변 감사드립니다!

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