一年一度的ICPC竞赛要开始了,世界各地的选手都在紧张激烈的准备着。yky自然也没有闲着,他准备在梅园开一家理发店,为即将参加比赛的选手们理发。
在yky的理发店中,选手们要经历三个步骤:洗头-剪头-洗头。 三个步骤缺一不可,且必须前一步完成后再进行下一步。
梅园的地皮寸土寸金,yky的理发店规模并不算大,只有一个洗头座位和一个剪头座位,每个座位只能同时为一名选手提供对应的服务。
已知有n名选手将要前来理发,第i个人的两次洗头时间皆为1,剪头时间为mi,因此三步对应花费的时间为1−mi−1。
选手们并不在意他们理发的相对顺序。且对于一名选手来说,理发的步骤与步骤之间允许存在空档。(通常选手们会利用空档时间刷题)
距离比赛开始的时间越来越近,yky想知道最少需要多久可以帮助 n 名选手全部完成理发。
这个问题太难了,yky去请教集训队的长老们,可长老们都忙着去出题了,于是yky将问题拜托给正在参加ICPC选拔赛的你。
第一行一个整数 n(1≤n≤105) ,表示一共有n名选手要理发。
接下来n行,每行一个整数mi(1≤m≤100),表示第i名选手的剪头时间。
一行一个整数,表示所有选手理发所需花费的最小时间。
2
1
2
5
对于样例,一共有两位选手前来理发,剪头时间分别为1和2。
一种可行的方案是:
第一名选手在第2个单位时间洗头,在第4个单位时间剪头,在第5个单位时间洗头。
第二名选手在第1个单位时间洗头,在第2−3个单位时间剪头,在第4个单位时间洗头。
容易证明,这是花费时间最小的可行性方案之一。当然对于本题,你只需要输出最小的花费时间即可。