Thứ Ba, 3 tháng 5, 2022

XAUHV PASCAL

var
   n,i:longint;
   c:char;
   x,s:string;
   d:array['A'..'Z'] of longint;
procedure vet(i:longint);
var j:char;
begin
   for j:='A' to 'Z' do
    if d[j]>0 then 
    begin
        dec(d[j]);//chon ki tu j cho x[i]
        x:=x+j;
            if i=n then writeln(x)
            else vet(i+1);//thu thanh phan tiep theo
        delete(x,i,1);//quay lui
        inc(d[j]);
    end;
end;

BEGIN
    assign(input, 'xauhv.inp');reset(input);
    assign(output, 'xauhv.out');rewrite(output);
    read(s);n:=length(s);
    for i:=1 to n do inc(d[s[i]]);
    vet(1);
    close(input);close(output);
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.