[CQOI2011]分金币
题号:NC19918
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

圆桌上坐着n个人,每人有一定数量的金币,金币总数能被n整除。每个人可以给他左右相邻的人一些金币,最终使得每个人的金币数目相等。你的任务是求出被转手的金币数量的最小值。  

输入描述:

第一行为整数n(n ≥ 3),以下n行每行一个正整数,按逆时针顺序给出每个人拥有的金币数。

输出描述:

输出被转手金币数量的最小值。
示例1

输入

复制
4
1
2
5
4

输出

复制
4

说明

样例解释
设四个人编号为1,2,3,4。第3个人给第2个人2个金币(变成1,4,3,4),第2个人和第4个人分别给第1个人1个金币。