Cod sursa(job #165672)

Utilizator katakunaCazacu Alexandru katakuna Data 26 martie 2008 15:56:55
Problema Oo Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<stdio.h>

int max,n,i,v[100011],t[100011];


int max2(int a,int b){

  if(a>b)
  return a;

return b;
}




int main(){



FILE *f=fopen("oo.in","r");

fscanf(f,"%d",&n);

  for(i=1;i<=n;i++)
  fscanf(f,"%d",&v[i]);

fclose(f);



   for(i=3;i<=n;i++){
   t[i]=max2(t[i-1],v[i]+v[i-1]+t[i-3]);
   }

   max=max2(max,t[n]);




t[1]=t[2]=t[3]=t[4]=v[1]+v[2];

   for(i=5;i<n;i++){
   t[i]=max2(t[i-1],v[i]+v[i-1]+t[i-3]);
   }

   max=max2(max,t[n-1]);



t[3]=t[2]=t[1]=v[n]+v[1];

   for(i=4;i<=n-2;i++){
   max=max2(max,t[n-2]);
   t[i]=max2(t[i-1],v[i]+v[i-1]+t[i-3]);
   }

   max=max2(max,t[n-2]);

FILE *g=fopen("oo.out","w");
fprintf(g,"%d",max);
fclose(g);

return 0;
}