Code nén xâu bị exit code 201





em bị exit code 201 ạ giúp em với ạ đúng ra output phải là3A2B2b2cbd ạ
đây là bài nén xâu ạ

Bạn đăng code của bạn dưới dạng chữ lên đây.

1 Like

em có đọc bài rồi nhưng không hiểu ạ

Bạn chép code của bạn lên đây đi.

1 Like

em không biết chép ạ

Bạn mở file pas của bạn bằng notepad rồi copy paste nội dung vào đây.

1 Like
const   fi='bai2.inp';
        fo='bai2.out';
var     s:ansistring;
        i,j,dem:longint;
begin
        assign(input,fi);assign(output,fo);
        reset(input);rewrite(output);
        readln(s); dem:=0; s:=s[1]+s;j:=length(s);
        for i:=1 to j do
                if s[i]=s[i+1] then inc(dem)
                else begin if dem<>1 then write(dem,s[i]) else write(s[i]); dem:=1; end;
        close(input);close(output);
end.

khi em khai báo xâu s string thì không bị nhưng đề bài bắt độ dài xâu lên tới 10^5 kí tự

Không quan trọng độ dài string là bao nhiêu, bây giờ nếu i = length(s) thì phần tử i+1 nằm ngoài string rồi :kissing:

Giải pháp là for i từ 1 đến length(s)-1 thôi, sau khi hết for thì kiểm tra lại biến dem 1 lần nữa.

2 Likes

em cảm ơn ạ

:heart_eyes: :heart_eyes: :heart_eyes: :heart_eyes: :heart_eyes: :heart_eyes: :heart_eyes: :heart_eyes:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?