/ Vijos / 题库 /

水果搬运

水果搬运

时间限制:1秒  内存限制:256M


【题目描述】

  有 \(n\) 个村庄等距地分布在一条笔直的公路上,编号为 \(1..n\)。每个村庄要么买水果,要么卖水果。设第 \(i\) 个村庄对水果的需求为 \(a_i\) ,其中 \(a_i>0\) 表示买水果,\(a_i<0\) 表示卖水果。所有村庄供需平衡,即所有 \(a_i\) 之和等于 0。把 \(k\) 个单位的水果从一个村庄运到相邻村庄需要 \(k\) 个单位的劳动力。计算最少需要多少劳动力可以满足所有村庄的需求。输出保证在 64 位带符号整数的范围内。

【输入格式】

  若干组数据,每组数据为两行。
  对于每组数据,第一行有一个整数 \(n\),第二行有 \(n\) 个整数:\(a_1,a_2,…,a_n\),其中 \(a_i\) 表示地 \(i\) 个村庄的水果需求量。输入的最后以 0 结尾。

【输出格式】

  每组数据一行,每行一个整数,表示最少需要的劳动力数量。

【输入输出样例】

 Input

10
3 -1 -2 9 -4 -1 -7 9 -7 1
5
1000 -1000 1000 0 -1000
0

 Output

33
3000

【数据限制】

  对于 \(100\%\) 的数据,\(1≤n≤100000\),\(-1000 ≤ a_i ≤ 1000\)。

【来源】

  Mr.he

信息

ID
2381
难度
9
分类
贪心 点击显示
标签
(无)
递交数
2
已通过
1
通过率
50%
被复制
5
上传者