Pagini recente » Cod sursa (job #3234016) | Cod sursa (job #2684057) | Cod sursa (job #208511) | Cod sursa (job #1693952) | Cod sursa (job #244764)
Cod sursa(job #244764)
#include<stdio.h>
int n,v[1000000],m[1000000];
bool ok=false;
void citire()
{
for(int i=1;i<=n;++i)
scanf("%d",&v[i]);
}
void verifica()
{
for(int i=1;i<=n && ok!=false;++i)
if(v[i]==m[i])
ok=true;
else ok=false;
}
int main()
{
int p,i,j,nr=0;
freopen("operatii.in","r",stdin);
freopen("operatii.out","w",stdout);
scanf("%d",&n);
citire();
while(ok==false)
{
ok=true;
for(p=1,i=0,j=0;p<=n+1;++p)
{
if(v[p]>0 && i==0 && v[p]!=m[p])
i=p;
else if(i && v[p]>0 && v[p]!=m[p])
j=p;
if(i>0 && j>0 && v[p]==0)
break;
}
if(i>0 && p>=n)
j=i+1;
for(;i<=j;++i)
m[i]++;
verifica();
++nr;
}
printf("%d",nr);
return 0;
}