U167341 mancala 游戏(mancala)

题目背景

mancala 是一个起源于非洲的古老的游戏。 它可以算是一种棋类游戏,用的棋盘是一个带有一些凹洞的石板,棋子是一些小 石子。 在一种规则中,棋盘上的凹洞排成两行,起初每个凹洞里都有些石子。 两个玩家轮流操作,直到操作方面前的一行凹洞中没有任何石 子时,游戏结束。 基本操作是这样的:玩家选择自己面前一行一个还有石子的凹洞,把凹洞中的石子 全部取出拿在手上,然后从玩家选择的凹洞的右边第一个凹洞开始按逆时针顺序一个 一个放入凹洞中,每个凹洞放一个石子。(逆时针顺序即从该凹洞开始到自己面前一行 最右边的凹洞,再从对面一行的最右边的凹洞到对面最左边的凹洞,再从面前一行的最 左边的凹洞到玩家选择的凹洞为一圈)但是每次在自己面前一行最右边一个凹洞中放 石子或是拿石子之后,如果手上还有石子,则收回一个石子(你可以认为你把这颗石子 放进你的口袋,不再拿出来使用);特殊地,如果收回的这颗石子是拿出的最后一颗石 子,那么该玩家还可以继续进行操作,直到该事件不再发生。

题目描述

现在,棋盘的长度变成了无限大。 也就是说,每一行都有无限个凹洞。 现在轮到你操作。此时对面一行的凹洞中没有任何石子,你面前一行只有最右边的 n 个凹洞中可能有石子。 你想知道你最多可以在游戏结束或轮到对方操作之前连续操作多少次。

输入格式

第一行一个正整数 n 。 第二行 n 个非负整数,其中第 i 个整数表示你面前一行从右往左第 i 个凹洞中的石 子的数量。

输出格式

一行一个整数,表示答案。

说明/提示

保证 n ≤ 2000000 。 保证每个凹洞里的石子个数不超过 5000000 。 对于 35% 的数据,n ≤ 7 。 对于 65% 的数据,n ≤ 300 。 对于 80% 的数据,n ≤ 2000 。