【問題L26】積木世界。 [回頁]

小 Bob 很喜歡玩堆積木。他把積木一塊疊著一塊,堆成高高低低許多疊。他告訴他的姊姊 Alice :「看!我堆成了一面牆!」。他姊姊回答:「喔!你應該把積木弄成一樣高,這才叫做牆。」。Bob 想了一下,覺得她是對的,所以他開始把其中幾塊積木調整一下,讓整堆積木都一樣高。由於 Bob 有點懶,所以他希望搬動最少的積木就能弄好。你能幫他這個忙嗎?


【Input】

 

輸入含有許多筆資料。每一筆資料的第一行含一個數 n,表示 Bob 堆的牆有幾疊,下一行跟著 n 個數字,表示第 i 疊的高度 hi。你可以假設 1<=n<=50, 且 1<=Hi<=100。

輸入的積木塊數總合必定可以被牆的疊數整除。因此,一定有辦法將積木調整成一樣的高度。

當有一筆資料的 n = 0 表示輸入結束,這筆資料不需要處理。

【Output 】

對於每一筆資料,先印出這是第幾筆,如範例輸出所示。再印一行 ``The minimum number of moves is k.'',此處 k 就是讓每一疊積木一樣高,最少需要的移動次數。

【Sample Input 】

6

5 2 4 1 7 5

0

【Sample Output 】

Set #1

The minimum number of moves is 5.