Cod sursa(job #373886)

Utilizator bugyBogdan Vlad bugy Data 15 decembrie 2009 13:40:38
Problema Oo Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<stdio.h>
#include<algorithm>
using namespace std;
int maxim,s[100100],n,v[100100],i;

int main(){
	FILE *f=fopen("oo.in","r"), *g=fopen("oo.out","w");
	
	fscanf(f,"%d",&n);
	
	for(i=1;i<=n;i++)
		fscanf(f,"%d",&v[i]);
	
	s[2]=v[1]+v[2];
	s[3]=s[4]=s[2];
	for(i=1;i<=n-1;i++){
		s[i]= max ( v[i]+v[i-1] + s[i-3], s[i-1] );
	}
	maxim=s[i-1];
	
	s[1]=v[1]+v[n];
	s[2]=s[3]=s[1];
	for(i=4;i<=n-2;i++){
		s[i]=max (v[i]+v[i-1] + s[i-3], s[i-1]);
	}
	if (s[i-1]>maxim)
		maxim=s[i-1];
	
	s[3]=v[2]+v[3];
	s[4]=s[5]=s[3];
	for(i=6;i<=n;i++)
		s[i]=max (v[i]+v[i-1] + s[i-3], s[i-1]);
	if(s[i-1]>maxim)
		maxim=s[i-1];
	
	fprintf(g,"%d",maxim);
	
	fclose(f);	
	fclose(g);
	return 0;
}