QOJ.ac

QOJ

Süre Sınırı: 2 s Bellek Sınırı: 256 MB Toplam puan: 100

#20781. 干旱

İstatistikler

干旱让 Farmer John 牧场的草枯了。绝望思索数小时后,他想到买玉米喂珍爱的牛这个妙招。

$N$ 头牛($1\le N\le10^5$)排成行,第 $i$ 头饥饿值 $h_i$($0\le h_i\le10^9$)。牛是社交动物,坚持一起吃,所以唯一减饥方法是选相邻 $i,i+1$,各喂一袋玉米,各值减一。

FJ 要让所有饥饿值相同且非负。求最少玉米袋数,不能则输出 -1。

输入格式

输入包含若干独立组,须全部正确解答。首行 $T$($1\le T\le100$)。随后每组两行,先 $N$,再 $h_1,h_2,\ldots,h_N$。保证所有 $N$ 之和最多 $10^5$,各组 $N$ 可以不同。

输出格式

输出 $T$ 行,每组一行。

数值很大,可能需要 64 位整数,如 C/C++ long long。

样例

输入格式 1

5
3
8 10 5
6
4 6 4 4 6 4
3
0 1 0
2
1 2
3
10 9 9

输出格式 1

14
16
-1
-1
-1

说明

首组给牛 2、3 各两袋,再给 1、2 各五袋,每头饥饿值变 3。

第二组给 1、2 各两袋,2、3 各两袋,4、5 各两袋,5、6 各两袋,最后每头饥饿值 2。

其余组不能使饥饿值相同。

子任务

  • 输入 2 的所有组:$N\le3$ 且 $h_i\le100$。
  • 输入 3–8 的所有组:$N\le100$ 且 $h_i\le100$。
  • 输入 9–14 的所有组:$N\le100$。
  • 输入 15 无额外限制。

另外,输入 3–5、9–11 的 $N$ 总是偶数;6–8、12–14 总是奇数。

题目作者:Arpan Banerjee

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.