NKTICK - Xếp hàng mua vé

Tác giả: ll931110

Ngôn ngữ: Pascal

Program NKTICK;
        Const
                input  = '';
                output = '';
        Var
                F,t,r: array[0..60000] of longint;
                    n: longint;

Procedure init;
          Var
                fi: text;
                 i: longint;
          Begin
                Assign(fi, input);
                        Reset(fi);

                        Readln(fi, n);
                        For i:= 1 to n do read(fi, t[i]);
                        For i:= 1 to n - 1 do read(fi, r[i]);
                Close(fi);
          End;

Function min(x,y: longint): longint;
         Begin
                If x < y then min:= x else min:= y;
         End;

Procedure optimize;
          Var
                i: longint;
          Begin
                Fillchar(F, sizeof(F), 0);
                F[1]:= t[1];

                For i:= 2 to n do F[i]:= min(F[i - 2] + r[i - 1],F[i - 1] + t[i]);
          End;

Procedure print;
          Var
                fo: text;
          Begin
                Assign(fo, output);
                        Rewrite(fo);
                        Writeln(fo, F[n]);
                Close(fo);
          End;

Begin
        init;
        optimize;
        print;
End.

Download