Cod sursa(job #274750)

Utilizator AnDrEwBoYA Andrei AnDrEwBoY Data 9 martie 2009 22:46:59
Problema Operatii Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include<stdio.h>

#define MAX_N 1000001
#define ZONA 1
#define NZONA 0

int main()
{
    long v,max;
    long n,i,totalZ = 0; int status = NZONA;
    long operatii = 0;
    freopen("operatii.in","r",stdin);
    freopen("operatii.out","w",stdout);
    
    scanf("%ld",&n);
    
    for(i = 1; i <= n; i++)
    {
          scanf("%ld",&v);
          if(v > 0 && status == ZONA)
          {
             if(max < v) max = v;  
          }
          else if(v == 0 && status == ZONA)
          {
               status = NZONA;
               operatii += max;
          }
          else if(v > 0 && status == NZONA)
          {
               status = ZONA;
               max = v;
               totalZ++;
          }
          if(i == n && status == ZONA && v > 0) operatii += max;
    }
    printf("%ld",operatii);
    fclose(stdin); fclose(stdout);
    return 0;
}