sqk8657   2년 전

문제에서 "봄에는 자신의 나이만큼 양분을 먹고, 나이가 어린 나무부터 양분을 먹는다." 이런 조건이 있습니다.

이러한 부분에서 심어진 나이의 입력에 관한 부분이 정해진게 없기 때문에, 같은 행, 열에 다른 나이의 나무가 심어져 있을수도 있고 심지어 나이가 많은 나무가 먼저 입력받아질 수 도 있고 한 마디로 나이가 정렬된 채로 입력받아진다는 보장이 없다고 생각했는데요.

이 문제의 마지막 예제를 예시로 들면

5 2 6
2 3 2 3 2
2 3 2 3 2
2 3 2 3 2
2 3 2 3 2
2 3 2 3 2
2 1 3
3 2 3

이런 예제가 있는데, 위에 입력을 조금 수정해본다면 아래와 같이 2, 1행에 나무가 더 심어져 있을 수 있습니다.

5 4 6
2 3 2 3 2
2 3 2 3 2
2 3 2 3 2
2 3 2 3 2
2 3 2 3 2
2 1 1
2 1 7
2 1 2
3 2 3

위의 예제같이 2행 1열에 나이가 1, 7, 2로 뒤죽박죽인 채점 테케가 있을 수도 있다고 생각했기 때문에 모든 나무의 입력을 받고나서 나이가 어린 나무 순으로 정렬하는 코드를 썼습니다.

다른 사람들도 위 사항을 고려해서 맨 처음 부분을 정렬하는 코드가 있는걸 봤구요

그런데 다른 정답코드들을 보면서 분석해보는 중에 첫 정렬 부분이 없는걸 확인했습니다.(결과적으로 이 부분때문에 시간차이가 드라마틱하지는 않았습니다.) 그 코드가 정답인걸 보고 뭔가 이상해서 제코드에서도 첫 정렬하는 부분을 빼고 채점을 해봤습니다. 그런데 맞았습니다가 나오네요. 

아마도 (2, 1, 1), (2, 1, 2), (2, 1, 6) 같이 정렬된 채점만 있고 (2, 1, 1), (2, 1, 6), (2, 1, 2) 같은 입력은 없는게 아닐까 해서요. 

제가 잘못 이해한 부분이 있는걸까요? 그게 아니고 제가 이해한게 맞다면, 이 부분은 문제될게 없는걸까요? 초기 심어질 나무의 입력이 나이순으로 입력이 보장되지 않는 문제라면 채점 기준에 정렬이 안된 위와 같은 테스트케이스가 있어야 하지 않나 해서 질문드립니다.

fail   2년 전

제한

  • 입력으로 주어지는 나무의 위치는 모두 서로 다름

저도 이 지문 한 줄 놓쳐서 똑같은 생각을 했었습니다.

sqk8657   2년 전

이걸 놓쳤었군요..... 답변 감사합니다

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