OPTADS360
AANETWORK
AMBIENT
YOMEDIA
Banner-Video
IN_IMAGE

Một chuỗi S gọi là chuỗi đối xứng liên tiếp nếu s[i]=s[length(s)+1-i] với mọi i thỏa mãn 1 \(1 \le i \le length(s)\). Cho một chuỗi S dài không quá 255 kí tự. Hãy cho biết độ dài chuỗi con đối xứng liên tiếp dài nhất trong chuỗi S.

Dữ liệu vào: File văn bản PALIND. INP gồm một dòng ghi chuỗi kí tự S.

Dữ liệu ra: File PALIND.OUT gồm một số nguyên chỉ chiều dài lớn nhất của chuỗi con đối xứng dài nhất trong chuỗi S.

  bởi Cam Ngan 30/11/2021
ADSENSE/lession_isads=0
QUẢNG CÁO
 

Câu trả lời (1)

  •  

    program palind;

    const

          fi='palind.inp';

          fo='palind.out';

    var f:text;

        s:string;

        max:integer;

    procedure nhap;

    begin

            assign(f,fi);

            reset(f);

            read(f,s);

    end;

    procedure xuly;

    var i,j,lj,k:integer;

        ok:boolean;

    begin

    max:=1;

    for i:=1 to length(s) do

            begin

            for j:=length(s) downto i+1 do

                    if s[i]=s[j] then

                    begin

                      ok:=true;

                      for k:=0 to (j-i) div 2 do

                            if s[i+k]<>s[j-k] then

                            begin

                                    ok:=false;

                                    break

                            end;

                      if ok then

                            if j-i+1>max then max:=j-i+1;

                    end;

            end;

    end;

    procedure xuat;

    begin

            assign(f,fo);

            rewrite(f);

            write(f,max);

            close(f);

    end;

    BEGIN

    nhap;

    xuly;

    xuat;

    END.

      bởi Thuy Kim 30/11/2021
    Like (0) Báo cáo sai phạm

Nếu bạn hỏi, bạn chỉ thu về một câu trả lời.
Nhưng khi bạn suy nghĩ trả lời, bạn sẽ thu về gấp bội!

Lưu ý: Các trường hợp cố tình spam câu trả lời hoặc bị báo xấu trên 5 lần sẽ bị khóa tài khoản

Gửi câu trả lời Hủy
 
 

Các câu hỏi mới

NONE
OFF