AT_abc027_b [ABC027B] 島と橋

题目描述

有 $N$ 个岛屿横向排列成一行。对于 $1 \leq i \leq N-1$,从左数第 $i$ 个岛屿和第 $i+1$ 个岛屿是相邻的。 一开始,从左数第 $i$ 个岛屿上住着 $a_i$ 人。高桥君希望让所有岛屿上的居民人数都相同。 高桥君可以在相邻的两个岛屿之间架设桥梁。此外,在通过桥梁直接或间接连通的多个岛屿之间,可以自由移动居民。 请你求出,为了让所有岛屿上的居民人数都相同,最少需要架设多少座桥。如果无论如何都无法让所有岛屿上的居民人数相同,则输出 $-1$。

输入格式

输入从标准输入按以下格式给出。 > $N$ > $a_1\ a_2\ \ldots\ a_N$ - 第 $1$ 行是表示岛屿数量的整数 $N$,满足 $2 \leq N \leq 100$。 - 第 $2$ 行是 $N$ 个整数 $a_i$,用空格分隔,表示从左到右第 $i$ 个岛屿上有 $a_i$ 人,满足 $0 \leq a_i \leq 100$。

输出格式

输出为使所有岛屿上的居民人数相同所需架设的最小桥梁数。如果无论如何都无法做到,则输出 $-1$。输出末尾需换行。

说明/提示

### 样例解释 1 如图所示架设桥梁即可。 ![](https://abc027.contest.atcoder.jp/img/abc/027/kakofvcs22vft/bridge_1.png) ### 样例解释 2 如图所示架设桥梁即可。 ![](https://abc027.contest.atcoder.jp/img/abc/027/kakofvcs22vft/bridge_2.png) ### 样例解释 3 无论如何架设桥梁,都无法让所有岛屿上的居民人数相同。 ### 样例解释 4 一开始所有岛屿上的居民人数就已经相同。 由 ChatGPT 4.1 翻译