Pagini recente » Cod sursa (job #3257765) | Cod sursa (job #3278559) | clasament-arhiva-educationala | Cod sursa (job #2777923) | Cod sursa (job #116272)
Cod sursa(job #116272)
#include<fstream.h>
ifstream fi;
ofstream fo;
int i,z=0,k=0;
long n,a[15000];
int numar(int n)
{
int ok,e,j,k=0;
for(i=1;i<n;i++)
if(a[i]==a[i+1])ok=1;
else ok=0;
if(ok==1)k=a[1];
else
{j=1;
for(i=j;i<=n;i++)
{i=j; e=i;
while(a[e]==a[e+1])e++;
if(a[e]==1)k=k+a[e];
else k=k+a[e]-1;
if(e!=i)j=e+1;
else if(j<=n)j++;
}
}
return k;
}
void main()
{fi.open("operatii.in");
fo.open("operatii.out");
fi>>n;
int i=0,p=1,q,jj=0;
do{ i++;
q=i;
fi>>a[i];
while((a[i]!=0)&&(q<=n))
{
a[p]=a[i];
p++;i=p;q++;
fi>>a[p];
jj=1;
}
if(jj==1)
{z=z+numar(p-1);
i=q;
p=1;jj=0;
}
}while(i<=n);
fo<<z;
fi.close();
fo.close();
}