- 超级教主
- 2018-05-10 21:11:51 @
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring>
int n,m,a[2000010],b[2000010],sum,Max;
using namespace std;
void cz(int i,int j)
{
for(int k=i;k<=j;k++)
{
b[k]=a[k]-a[i-1]+sum-k*100;
if(Max<b[k] && b[k]<n*100)
Max=b[k];
if(b[k]>=n*100)
{
printf("%d\n",b[k]-n*100+a[n]-a[k]);
return;
}
}
sum=Max;
cz(j,Max/100);
}
int main()
{
int i;
while(~scanf("%d %d",&n,&m))
{
memset(a,0,sizeof(int)*(n+1));
memset(b,0,sizeof(int)*(n+1));
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
a[i]+=a[i-1];
}
sum=m;Max=0;
cz(1,m/100);
}
return 0;
}