|
샤오메이는 블록 가지고 노는 걸 좋아해. 그녀는 블록들을 하나씩 높이가 다른 상자에 쌓았다.“봐, 내가 벽을 쌓았어!”그녀는 큰언니 샤오량에게 말했다.“모든 블록을 같은 높이로 만들어야 해. 그래서 진짜 벽을 쌓는 거야.”그녀가 대답했다. 잠시 생각한 끝에, 샤오메이는 그녀가 옳다고 생각했다. 그 후 블록들을 하나씩 재배치하기 시작했고, 마침내 모든 블록이 같은 높이가 되었다. 하지만 샤오메이는 게을러서 모든 블록을 같은 높이로 만들기 위해 최소한의 블록만 움직이고 싶어 한다. 도와줄 수 있어?
설명을 입력하세요: 입력은 여러 데이터 컬렉션을 포함합니다. 각 데이터 세트의 첫 번째 행은 정수입니다n는 샤오메이의 구성 요소들의 열 수를 나타냅니다. 두 번째 줄에는 다음과 같이 있습니다.n각 블록 열의 높이를 나타내는 정수들hi는 열에 가 있음을 나타냅니다.hI가 블록을 사용해요. 추정1≤≤50,1≤hi≤100. 블록의 총 수는 열의 수로 나누어집니다. 따라서 각 열은 동일한 높이로 쌓이는 것이 보장됩니다. 입력은 0으로 끝나며, 0은 입력 데이터로 사용되지 않습니다. 출력 설명: 각 데이터셋에 대해 해당 데이터셋의 일련번호를 출력하세요. 출력 예제를 참고하세요. 그 다음 "최소 이동 횟수는 k입니다."라는 문구를 출력하세요. 여기서 k는 이 블록들을 같은 높이로 이동시키는 데 걸리는 최소 횟수를 의미합니다. 각 데이터셋 후에 빈 행 하나씩 출력합니다. 입력 예시: 6 5 2 4 1 7 5 0 출력 샘플 세트 #1 최소 수는 5수입니다.
|