Bài 2: Cho dãy số gồm n số nguyên. Tìm dãy con có tổng lớn nhất

Bài 2: Cho dãy số gồm n số nguyên. Tìm dãy con có tổng lớn nhất

0 bình luận về “Bài 2: Cho dãy số gồm n số nguyên. Tìm dãy con có tổng lớn nhất”

  1. Const Fi=’DAYCON.INP’;
          Fo=’DAYCON.OUT’;
    Type mang=array[1..1000000] of longint;
    Var f,g: text;
        A: mang;
        n,i,j,dau,dai,max: longint;

    Function Tong(A: mang; m,l: longint): longint;
    Var tg,i: longint;
    Begin
            tg:=0;
            For i:=m to m+1 do tg:=tg+A[i];
            Tong:=tg;
    End;

    Begin
            Assign(f,Fi); Reset(f);
            Assign(g,Fo); Rewrite(g);
            Readln(f,n);
            For i:=1 to n do
                    Read(f,A[i]);

            max:=A[1];
            For i:=1 to n do
                    For j:=0 to n-i+1 do
                            If Tong(A,i,j)>max then
                            Begin
                                    dau:=i;
                                    max:=Tong(A,i,j);
                                    dai:=j+1;
                            End;
            For i:=dau to dau+dai do Write(g,A[i],’ ‘);
            Close(f);
            Close(g);
    End.

    Bình luận

Viết một bình luận