奶牛bessie有n根蜡烛,第i根蜡烛的长度是h[i]. bessie最近刚上完小学,只会加减法。它想知道它的n根蜡烛最多能用多少个晚上。由于bessie比较胆小,因此它第一个晚上只点燃一根蜡烛,第二个晚上点燃两根蜡烛,第三个晚上点燃三根蜡烛…第i个晚上它必须要点燃i根蜡烛。每根被点燃的蜡烛,它燃烧一个晚上会使得它的长度减少1。一旦蜡烛的长度变成0,那么该根蜡烛就用完了。如果第i个晚上bessie发现不够i根蜡烛用了,那么bessie就会睡不着。 Bessie想知道,它该如何选择每个晚上点燃哪些蜡烛,可以使得它的n根蜡烛能用尽量多的晚上。输出最多能用多少个晚上。
输入格式
第一行:一个整数n, 1 <= n <= 50.
第二行:n个整数,第i个整数表示第i根蜡烛的长度h[i]. 1 <= h[i] <= 100.
输出格式
一个整数,总共最多能用多少个晚上。
输入/输出例子1
输入:
3
2 2 2
输出:
3
样例解释
无
#include<bits/stdc++.h>
using namespace std;
bool cmp(int x,int y)
{
return x>y;
}
int n,a[10000],s=0;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
for(int i=1;;i++)
{
sort(a+1,a+1+n,cmp);
for(int j=1;j<=i;j++)
{
a[j]--;
if(a[j]<0)
{
cout<<i-1;
return 0;
}
}
}
return 0;
}