第 027 场 AtCoder Beginner Contest
B
島と橋
AtCoder
⌀ 855
原题
← AC →
翻译中…

Problem Statement

翻译中…

$N$ 個の島が横一列に並んでいる。 $1≦i≦N-1$ について、左から $i$ 番目の島と $i+1$ 番目の島は隣り合っている。

翻译中…

はじめ、左から $i$ ($1≦i≦N$) 番目の島には $a_i$ 人の住人が住んでいる。 高橋君はすべての島に同じ人数の住人が住むようにしたいと考えている。

翻译中…

高橋君は隣り合う $2$ つの島の間に橋を架けることができる。 また、直接的または間接的に橋で結ばれた複数の島の間で、住人を自由に移動させることができる。

翻译中…

すべての島に同じ人数の住人が住むようにするために、架ける必要のある橋の本数の最小値を求めよ。

翻译中…

Input

翻译中…

入力は以下の形式で標準入力から与えられる。

翻译中…

N
a_1 a_2 .. a_N

翻译中…
  • $1$ 行目には、島の個数を表す整数 $N$ ($2≦N≦100$) が与えられる。
  • $2$ 行目には、整数 $a_i$ ($0≦a_i≦100$) が空白区切りで与えられる。これは、左から $i$ 番目の島には $a_i$ 人の住人が住んでいることを表す。
翻译中…

Output

翻译中…

すべての島に同じ人数の住人が住むようにするために、架ける必要のある橋の本数の最小値を $1$ 行に出力せよ。 ただし、どのように橋を架けてもすべての島に同じ人数の住人が住むようにできないならば、代わりに -1 を出力せよ。 出力の末尾には改行を入れること。

翻译中…

样例

Input #1
3
1 2 3
Output #1
2
図のように橋を架ければよい。 ![image](https://abc027.contest.atcoder.jp/img/abc/027/kakofvcs22vft/bridge_1.png)
Input #2
5
2 0 0 0 3
Output #2
3
図のように橋を架ければよい。 ![image](https://abc027.contest.atcoder.jp/img/abc/027/kakofvcs22vft/bridge_2.png)
Input #3
2
0 99
Output #3
-1
どのように橋を架けてもすべての島に同じ人数の住人が住むようにできない。
Input #4
4
0 0 0 0
Output #4
0
はじめからすべての島に同じ人数の住人が住んでいる。
题目信息
题号
abc027_b
时间限制
2 s
内存限制
256 MB

题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。