cjw990206   2년 전

안녕하세요 고수님들.

7568번 문제를 풀어보다가, 해당 테스트케이스에 대해 어떤식으로 결과가 나와야 하는지에 대해 여쭤봅니다.

5

80 180 

90 190

85 185

87 187

30 200

이러한 테스트 케이스에서는,  몸무게 30이면서 키 200인 사람이 전부 동률을 가지어

모든 테스트케이스가 같은 덩치를 갖게 되어야 맞다는 생각이 드는데,

해당 문제에 대해 정답이라는 판정을 받은 코드에서 이 테스트케이스를 돌려보면,

결과값이 이상하게 나옵니다.

하여, 이러한 테스트 케이스에 대해 다른분들은 어떻게 생각하시는지 궁금해 여쭤봅니다.

감사합니다.

djm03178   2년 전

덩치의 정의가 그렇게 대칭적으로 되어있지 않습니다. 각 사람에 대해서 자기의 등수만 구하면 되고, 자신과 다른 학생의 덩치가 비교가 안 된다고 해서 둘이 같은 등수를 가져야 할 이유가 전혀 없습니다. 해당 케이스에 대한 정답은 4 1 3 2 1입니다.

ksoosung77   2년 전

5

80 180

90 190

85 185

87 187

30 200

는 

4 1 3 2 1이 나오는것이 맞습니다

위에 분들이 쓰신 말들이 맞긴 맞는데 개인적으로 게시판 참고해봤을 때 말이 이해하기 어려워서 댓글 남겨봅니다

문제에선 되게 학생들 간 '덩치'를 비교해서 순위를 구하는 문제처럼 보여서 저도 좀 어렵게 접근했는데 사실은 그게 아닙니다

" C보다 더 큰 덩치의 사람이 없으므로 C는 1등이 된다. 

그리고 A, B, D 각각의 덩치보다 큰 사람은 C뿐이므로 이들은 모두 2등이 된다. 

그리고 E보다 큰 덩치는 A, B, C, D 이렇게 4명이므로 E의 덩치는 5등이 된다."

문제에서 보듯이 대상 기준 '덩치'가 큰 대상들만 구별하기 때문에 

두 번째 분이 말씀하신 것처럼 각 사람에 대해서 자기의 등수만 구하면 되므로

사실상 기준보다 큰 인원이 몇 명 인지를 묻는 문제가 맞는 것 같습니다.

seungwook0502   2년 전

왜 1등을 2명이 했는데 2등이 있는건가요??

저는 5 1 4 3 1 이라고 나왔는데 어떤게 맞는건가요??

이때 나보다 덩치가 큰 카운트는 3 0 2 1 0 이 나왔습니다

djm03178   2년 전

1등이 두 명이 있어도 2등이 있을 수 있습니다. 이런 게 가능한 이유는 두 학생 사이의 덩치가 한쪽이 이기는 것이 아닌 비기는 관계일 경우가 존재할 수 있기 때문입니다. 1등은 그냥 '누구에게도 지지 않으면' 1등이 됩니다. 1등이 두 명이라고 해서 그 두 명이 2등을 모두 이기는 것이 아닐 수 있다는 것입니다.

seungwook0502   2년 전

답변 감사합니다!

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