Bài 1. Gửi thư . Vị Giám đốc công ty XYZ cần gửi một văn bản quan trọng tới một đối tác của mình. Văn bản là một xâu S các chữ cá

Bài 1. Gửi thư .
Vị Giám đốc công ty XYZ cần gửi một văn bản quan trọng tới một đối tác của mình. Văn bản là một xâu S các chữ cái la tinh in thường. Để bảo mật nội dung văn bản, ông Giám đốc gửi 2 bức thư. Bức thư thứ nhất là phần đầu Sb của xâu S, bức thư thứ 2 là phần cuối Se của S. Hai bức thư Sb và Se đảm bảo đầy đủ nội dung của S, tuy nhiên có thể một phần cuối của Sb có thể được viết lặp lại trong phần đầu của Se, song số kí tự được viết lặp lại không biết trước.
Ví dụ: với văn bản S=’truongnguyenduquannhat’ tạo ra hai bức thư:
Sb=’truongnguyendu’ và Se=’nguyenduquannhat’
Yêu cầu: Cho hai xâu Sb và Se, hãy xác định một xâu S có thể là nội dung của bức thư sao cho độ dài của xâu S là ngắn nhất.
Dữ liệu
Dòng đầu chứa xâu Sb, dòng thứ hai chứa xâu Se. Mỗi xâu có độ dài không quá 250.
Kết quả
Ghi ra độ dài của xâu S tìm được.
Ví dụ
Dữ liệu
truongnguyendu
nguyenduquannhat
Kết quả
22

0 bình luận về “Bài 1. Gửi thư . Vị Giám đốc công ty XYZ cần gửi một văn bản quan trọng tới một đối tác của mình. Văn bản là một xâu S các chữ cá”

  1. uses crt;
    var i:byte; sb,se:string;
    begin
    clrscr;
       readln(sb);
       readln(se);
       i:=1;
       while pos(copy(se,1,i),sb)<>0 do inc(i);
       dec(i);
       delete(se,1,i);
       writeln(length(sb)+length(se));
    readln
    end.

    Bình luận
  2. uses crt;
    var se,sb:string;
    i,dem,nho:byte;
    begin
        clrscr;
        readln(sb);
        readln(se);
        dem:=1;nho:=0;
        for i:=1 to length(sb) do
           if copy(sb,length(sb)-i+1,i)=copy(se,1,i) then
              nho:=i;
        delete(se,1,nho);
        writeln(length(sb)+length(se));
    readln;
    end.

    Bình luận

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