Cod sursa(job #127908)
Utilizator | Data | 25 ianuarie 2008 13:50:54 | |
---|---|---|---|
Problema | Operatii | Scor | 70 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.61 kb |
#include<stdio.h>
int j,i,n,nr,max,v[1000000],min;
int main(){
FILE *f=fopen("operatii.in","r");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++){
fscanf(f,"%d",&v[i]);
}
fclose(f);
for(i=1;i<=n;i++){
if(v[i]>0){
max=v[i];
min=v[i];
while(v[i]>=v[i+1]&&i<=n){
i++;
if(v[i]>max)max=v[i];
if(v[i]<min)min=v[i];
}
if(v[i]!=0){
j=i+1;
while(v[j]!=0){
if(v[j]<min){
min=v[j];}
v[j]-=min;
j++;
}
}
nr+=max;
}
}
FILE *g=fopen("operatii.out","w");
fprintf(f,"%d",nr);
fclose(g);
return 0;
}