Cod sursa(job #176219)

Utilizator mad200647Mihai Toma mad200647 Data 10 aprilie 2008 21:08:31
Problema Oo Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<fstream.h>
int i,n,v[100],x[100],ok,max,s,poz;
int main ()
{
ifstream f("oo.in");
ofstream g("oo.out");
f>>n;
for (i=0;i<n;i++) f>>v[i];
for (i=0;i<n-1;i++)
	x[i]=v[i]+v[i+1];
x[n-1]=v[0]+v[n-1];
ok=1;s=0;
while (ok)
	{max=-1;
	 poz=-1;
	 for (i=0;i<n;i++)
		if (x[i]>max && i>0 && i<n-1) {if (x[i-1]!=-1 && x[i+1]!=-1) {max=x[i];poz=i;}}
		else if (x[i]>max && i==0) {if (x[1]!=-1 && x[n-1]!=-1) {max=x[i];poz=i;}}
			  else if (x[i]>max && i==(n-1)) {if (x[n-2]!=-1 && x[0]!=-1) {max=x[i];poz=i;}}
	 if (max==-1) {ok=0;break;}
	 s+=max;
	 if (poz==0) x[poz]=x[n-1]=x[poz+1]=-1;
	 else if (poz==(n-1)) x[poz]=x[poz-1]=x[0]=-1;
			else x[poz]=x[poz-1]=x[poz+1]=-1;
	}
g<<s;
return 0;
}