Thứ Tư, 27 tháng 4, 2022

TWOVALS PASCAL

var     n,i,x,y,maxx,j:longint;
        a:array[0..1000005] of longint;
        s1,s2:real;

procedure nhap;
begin
        readln(n);
        for i:=1 to n do read(a[i]);
end;

procedure giai;
begin
        x:=1;
        for i:=2 to n do
                if a[i]<>a[x] then
                begin
                        y:=i;
                        break;
                end;
        if y=0 then
        begin
                write('0');
                exit;
        end;
        a[n+1]:=1000000000;
        for i:=y+1 to n+1 do
        begin
                if (a[i]<>a[x]) and (a[i]<>a[y]) then
                begin
                        if i-1-x+1>maxx then
                                maxx:=i-1-x+1;
                        y:=i;j:=i-1;
                        while a[j]=a[i-1] do dec(j);
                        x:=j+1;
                end;
        end;
        write(maxx);
end;

begin
        assign(input,'twovals.inp');reset(input);
        assign(output,'twovals.out');rewrite(output);
        nhap;
        giai;

end.

Không có nhận xét nào:

Đăng nhận xét

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.