Bài: Thám hiểm (tên file: BAI1.PAS) Một nhà thám hiểm leo núi mang theo một máy tính có thể liên lạc truyền tin qua hệ thống vệ tinh với một máy tính khác đặt ở trạm dưới chân núi, nơi ông khởi hành. Chẳng may, ông gặp tai nạn động đất và bị thương, phải trú tạm tại một trạm dừng chân trên núi. Máy tính ông mang theo cũng bị hỏng sau tai nạn, nó không thể nhận tin đến. Nhà thám hiểm đã cố gắng truyền đi chuỗi tin S thông báo địa điểm của mình về trạm, mỗi lần liên lạc đều truyền cùng một thông điệp và lặp lại thông điệp đó nhiều lần, mỗi lần cách nhau một khoảng thời gian. Nhưng ông không biết rằng thông tin truyền đi luôn bị mất đi đúng m kí tự liên tiếp nhau trong mỗi lần chuyển tin, vị trí bị mất tin là ngẫu nhiên trong chuỗi tin. Thông điệp tại máy tính nhận bị đứt làm hai chuỗi tin s1, s2. Nguồn pin của máy tính là có hạn, sau n lần gửi tin, ông đã mất liên lạc, do pin cạn kiệt. Vấn đề ở trạm là phải phục hồi lại thông điệp đó, căn cứ vào các cặp chuỗi tin nhận được sau n lần nhận tin. -Yêu cầu: Với n, m do đội cứu hộ cung cấp, Em hãy viết một chương trình giúp đội cứu hộ phục hồi lại thông điệp nhận được. -Dữ liệu vào: cho trong file văn bản TH_HIEM.INP, hàng đầu tiên là số n, m (2<=n<=100; 1<=m<=100). 2n hàng tiếp theo, biểu diễn lần lượt từng cặp s1, s2 (khác rỗng, mỗi chuỗi dài không quá 200 kí tự). -Dữ liệu ra: Ghi vào file văn bản TH_HIEM.OUT, là giá trị chuỗi s đã phục hồi được. Nếu không thể phục hồi thì ghi chuỗi “KHONG-THE”. Quy ước: kí tự trắng thay bằng dấu ‘-‘. Ví dụ: ---------------------- TH_HIEM.INP 2 6 JOIN-O- 2 J TRAM-12 ------------------------ TH_HIEM.OUT JOIN-O-TRAM-12

1 câu trả lời

uses crt;
type int = longint;
const task = 'TH_HIEM';
var n, m, i, j, p: int;
    l1, l2: int;
    s, s1, s2: ansistring;
    check: boolean = true;
begin
//    assign(input, task + '.INP'); reset(input);
//    assign(output, task + '.OUT'); rewrite(output);
    
    readln(n, m);
    for i:=1 to 500 do s:=s + '^';
    for i:=1 to n do begin
        readln(s1); readln(s2);
        l1:=length(s1); l2:=length(s2);
        
        for j:=1 to l1 do 
            if s[j] = '^' then s[j]:=s1[j] else check:=check and (s[j] = s1[j]);
        
        for j:=1 to l2 do begin
            p:=l1 + m + j;
            if s[p] = '^' then s[p]:=s2[j] else check:=check and (s[p] = s2[j]);
        end;
    end;
    
   for i:=2 to 500 do 
        if (s[i - 1] = '^') and (s[i] <> '^') then check:=false;
    
    if check then begin
        i:=1; while s[i] <> '^' do begin write(s[i]); inc(i); end;
    end else writeln('KHONG-THE');
    
//    close(input); close(output);
end.

Câu hỏi trong lớp Xem thêm

giup e voi I/ Supply the correct form of the verbs in brackets 1. You (think) ……………………… collecting stamps costs much money? 2. Every year, my mother (give) ……………………… me a nice doll on my birthday. 3. Jenny says she loves collecting pens but she (not/continue) ……………………… this hobby from next year. 4. If you wash your hands more, you (have)……………………. less chance of catching flu. 5. Getting plenty of rest is very good. It (help)…………………. you to avoid depression. 6. Mr. John (be) ……………………… principal of our school since last year. 7. I (see) ……………………… a car accident on this corner yesterday. 8. We like (come)……………………to school by bus, but we hate (stand)………………………. and (wait) …………………… in the rain. 9. ……………………… (you/ ever/ meet) anyone famous? 10. My mother (come) ……………………… to stay with us next weekend. 11. When he lived in Manchester, he (work) ……………………… in a bank. 12. We (be) ……………………… students for four years. 13. We are planting trees around our school now. Our school (be) ……………………… surrounded by a lot of green trees. 14. What ……………………… your father usually ……………………… (do) in the evenings? 15. My sister likes (cook) ……………………… very much. She can cook many good foods. 16. My father says when he's retired, he (go) …………………… back to his village to do the gardening. 17. They want (buy) ……………………… some meat for dinner. 18. Linh is my best friend. We (know) ……………………… each other for 5 years. 19. I enjoy (fish) ……………………… because it is relaxing. 20. How about (go) ……………………… to the movie theatre?

2 lượt xem
1 đáp án
12 giờ trước