Cod sursa(job #575691)

Utilizator andrei.finaruFinaru Andrei Emanuel andrei.finaru Data 8 aprilie 2011 17:34:22
Problema Operatii Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<fstream.h>
ifstream f("operatii.in");
ofstream g("operatii.out");
int n,v[1000005],c,mod,ok,prim;
int main()
{
	int i;
	f>>n;
	for(i=1;i<=n;++i)
		{ f>>v[i];
		  if(v[i])
			  if(mod) --v[i];
				  else mod=1,++c,--v[i];
			  else mod=0;
		}
	prim=1;
	do{ ok=1;
		for(i=prim;i<=n;++i)
			if(v[i])
				{ ++c;
				  while(v[i]) 
					  { --v[i];
					    if(v[i]&&ok) ok=0,prim=i;
						++i;
					  }
				}
	  }while(!ok);
	g<<c<<'\n';
	f.close(); g.close();
	return 0;
}