Cod sursa(job #115700)

Utilizator CezarMocanCezar Mocan CezarMocan Data 16 decembrie 2007 20:39:45
Problema Operatii Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.82 kb
var n,i,s,max,st,dr,min:longint;
    v:array[1..1000010] of longint;

begin
assign(input,'operatii.in');reset(input);
assign(output,'operatii.out');rewrite(output);
readln(n);
for i:=1 to n do
        read(v[i]);
i:=1;
v[n+1]:=0;
while i<=n do
        begin
        while v[i]=0 do
                inc(i);
        max:=0;
        st:=v[i-1];
        while v[i]=v[i+1] do
                inc(i);
        dr:=v[i+1];
        min:=v[i];
        if st=0 then
                st:=maxlongint;
        if dr=0 then
                dr:=maxlongint;
        if st<min then
                min:=st;
        if dr<min then
                min:=dr;
        if min=v[i] then
                s:=s+min
        else
                s:=s+v[i]-min;
        inc(i);
        end;
writeln(s);
close(input);close(output);
end.