Problem4213--NOIP2002 均分纸牌

4213: NOIP2002 均分纸牌

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

有 $n$ 堆纸牌,编号分别为 $1,\ 2,\ …,\ n$。
每堆上有若干张,但纸牌总数必为 $n$ 的倍数。可以在任一堆上取若干张纸牌,然后移动。
移牌规则为:在编号为 $1$ 的堆上取的纸牌,只能移到编号为 $2$ 的堆上;在编号为 $n$ 的堆上取的纸牌,只能移到编号为 $n-1$ 的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。
现在要求找出一种移动方法,用最少的移动次数使每堆上纸牌数都一样多。

Input

第一行一个数字 $n\ (1 \leq n \leq 100)$,表示有 $n$ 堆纸牌。
第二行包括 $n$ 个数字,$a_1\ a_2\ …\ a_n$,第 $i$ 个数字表示编号为 $i$ 的这堆纸牌的初始数,$1≤ a_i ≤10,000$。

Output

所有堆均达到相等时的最少移动次数。

Sample 1 Input

4
9 8 17 6

Sample 1 Output

3
$n=4$,$4$ 堆纸牌数分别为:第①堆有 $9$ 张纸牌,第②堆有 $8$ 张纸牌,第③堆有 $17$ 张纸牌,第④堆有 $6$ 张纸牌。
移动 $3$ 次可达到目的:
从第③堆取 $4$ 张牌放到第④堆,这样每堆纸牌数量为:$9\ 8\ 13\ 10$;
从第③堆取 $3$ 张牌放到第②堆,这样每堆纸牌数量为:$9\ 11\ 10\ 10$;
从第②堆取 $1$ 张牌放到第①堆,这样每堆纸牌数量为:$10\ 10\ 10\ 10$。

Source/Category

基础算法 4.13.贪心