纸牌游戏
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

公司举办团建活动,许多人在一起玩一个纸牌游戏。规则如下:

总共有 n 个人,每个人初始有 n 张牌。每一轮从第一个人开始轮流操作,第 i 个人每次操作必须选择 min(people-1,a_i)不同的人,分别从他们手中拿走一张牌。其中people 为游戏现存人数,手上没有牌的人立即被淘汰出局。大家希望有尽可能多的人出局,游戏无限的进行下去,问最终游戏中最少还有几个人没有出局。
注意:不能从自己手中拿牌

输入描述:

第一行输入一个数字 n, 代表游戏的总人数。接下来输入 n 个数字,分别代表 a_i

输出描述:

输出一行一个整数表示游戏最终最少剩几个人。
示例1

输入

复制
2
1 2

输出

复制
2

说明

两个人只能互相拿对方的一张牌,游戏永远进行下去。

备注:

对于 20% 的数据,满足

对于 40% 的数据,满足

对于 100% 的数据,满足