songmin9813   2년 전

첫째 줄에 도시의 개수 N (1 ≤ N ≤ 500) 가 주어집니다만, 도시가 1개라면 문제의 모호성이 발생합니다.

실제로 제가 작성한 코드 (37920587번)에서

1 1

1 1 100

출력 : X

1 1

1 1 -100

출력 : -1

와 같은 출력이 나옴에도 통과됨을 알 수 있습니다.


입력 조건으로 '첫째 줄에 도시의 개수 N (2 ≤ N ≤ 500)' 로 바꿔주는 것이 모호한 표현을 바로잡는 데 도움이 될 것 같습니다.

jh05013   2년 전

문제는 명확하지만, 채점에 사용되는 데이터가 약해서 잘못된 코드가 통과된 것입니다. 해당 입력이 채점 데이터로 추가되어야 합니다.

songmin9813   2년 전

물론 문제도 명확하다고 할 수 있는 관점입니다. 그렇다면 '도시가 하나밖에 없다면 출력하지 않는다.' 같은 출력 조건도 새로 만들어야 한다고 생각합니다.

하지만 이것이 추가된다면 첫 번째 출력 조건을 동시에 만족하는 '도시가 하나만 존재하면서 그 하나로 인해 시간을 무한히 전으로 돌릴 수 있는 경우'가 나오게 되어, 이를 명시하기 위한 출력 조건이 전보다 복잡해지게 됩니다. 그래서 아예 도시의 개수를 2개 이상으로 고정하는 것이 조건상 더 깔끔할 것 같아 건의해보았습니다. 

hgmhc   2년 전

말씀하신 2가지 출력이 왜 잘못된 출력인가요?

jh05013   2년 전

다시 보니 애초에 잘못된 출력도 아니네요...

jh05013   2년 전

"출력: X"라는 게 진짜로 X를 출력한다는 것으로 오해했나 봅니다.

songmin9813   2년 전

@jh05013 @hgmhc 일단 거의 한 달 전에 올린 글에도 이런 관심 가져주셔서 감사합니다ㅋㅋㅋㅋ아직도 이야기할 거리가 남아있는 게 신기하네요

애초에 제가 제시한 예시와 답은 모두 정답으로도 처리될 수 있습니다. 잘못된 출력이 없다고도 할 수 있어요. 이 글의 중점은 일부 입력에 대한 아무런 출력이 없는데도 정답으로 처리를 하려면 문제에 명시를 해야 하지 않냐는 겁니다.

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