nahwasa   2년 전

네번째 수라는 표현이 모호한 것 같습니다.

[문제]

어느 날, 상근이는 자신이 고른 4개 숫자 중 1개를 까먹었다. 상근이가 고른 네 개의 숫자 중 세 개가 주어졌을 때, 네 번째 숫자를 구하는 프로그램을 작성하시오.

->

어느 날, 상근이는 자신이 고른 4개 숫자 중 1개를 까먹었다. 상근이가 고른 네 개의 숫자 중 기억하고있는 세 개가 주어졌을 때, 까먹은 숫자를 구하는 프로그램을 작성하시오.

[출력]

첫째 줄에 네 번째 숫자를 출력한다. 정답이 여러 개일 경우에는 아무거나 출력하면 된다. 또한 정답이 존재하지 않는 경우는 입력으로 주어지지 않는다.

->

첫째 줄에  까먹은 숫자를 출력한다. 정답이 여러 개일 경우에는 아무거나 출력하면 된다. 또한 정답이 존재하지 않는 경우는 입력으로 주어지지 않는다.


point_102us   2년 전

네 개중에 세 개라고 했으니 나머지는 네번째 수일 것이고, 세 개의 수를 제공했다면 그 세 개의 수를 기억하고 있다는 것이고, 그러면 나머지 한개가 자동으로 까먹은 수라는 것이라는 걸 유추할 수 있지 않을까요?

jh05013   2년 전

수정이 필요하다고 생각합니다. 상근이가 네 번째 수를 까먹었다는 보장도 없으며, 문제가 상근이의 시점에서 서술되었으리란 법도 없습니다.

적어도 예제가 추가되면 좋겠습니다. 실제 대회에는 다음 예제가 있었습니다.

별개로 모든 "숫자"를 "수"로 수정해야 합니다.

nahwasa   2년 전

@point_102us

일단 네 '번째' 에서 차례상 마지막이라는 의미가 내포되어 있다고 생각됩니다.

전체적으로 보자면,

'네 개의 숫자 중 세 개가 주어진다. 이 숫자는 크기 순이 아닐 수도 있고' + '네 번째 숫자를 구해라'

니까, 등차수열의 맨 마지막을 뜻한다고 생각됩니다. (그래서 차이가 +일수도 있고 -일수도 있으니 정답이 여러개일 시 아무꺼나 출력하라고 한줄 알았어요)

하지만 실제로는 네 번째 숫자는 중간에 있을수도 있는 수였구요.

뭐 결국 등차수열에서 순서상 네 번째로 판단하는지,

문제 서술 상 그냥 3개 이미 나왔으니 등차수열 순서와는 상관없이 4개 중에 3개 나왔어서 남은게 네 번째니까 네 번째로 판단하는지

이 둘 중 하나인데, 명확하게 둘 다로 해석될 수 있으니 수정하는게 맞지 않나 싶었습니다.

아니면 jh05013님이 적으신대로 예제만 보여줘도 충분히 판단할 수 있죠.

실제로 설명이 모호할 경우 예시에서 명확하게 보여주는 문제가 매우 많으니까요.

nahwasa   2년 전

이 문제 분명히 '네 번째'로 이해하고 그냥 정렬하고 차이만큼 3번째에 더한분들 많으실껄요?!

point_102us   2년 전

그렇군요...생각해보니까 필요하겠네요

startlink   2년 전

수정했습니다.

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