Задача 8 Урок 16

Задача 8 урок 16

Проверить можно ли строки из m перестановкой символов получить строку n.
Примеры (входные данные и ответ):

abc и bca

-- можно

abc и baa

-- нельзя

abcc и cbac

-- можно

abc4c и cb55ac

-- нельзя

program U16Z8;
var m,n: string;
    i,k: integer;
begin
  writeln('vvedite stroku m');
  readln(m);
  writeln('vvedite stroku n');
  readln(n);
  for i:=1 to length(m) do
  begin
    k:=pos(m[i],n);
    if (k=0) then
    begin
      break;
    end
    else
    begin
      delete(n,k,1);
    end;
  end;
  if (i=length(m)) and (n='') then
    writeln('mozhno')
  else
    writeln('nelzya');
  readln();
end.    
vedro-compota's picture

Решить без pos()

_____________
матфак вгу и остальная классика =)

program U16Z8;
var m,n: string;
    i,j: integer;
    f: boolean;
begin
  writeln('vvedite stroku m');
  readln(m);
  writeln('vvedite stroku n');
  readln(n);
  for i:=1 to length(m) do
  begin
    f:=false;
    for j:=1 to length(n) do
    begin
      if (m[i]=n[j]) then
      begin
        f:=true;
        delete(n,j,1);
        break;
      end;
    end;
    if (not f) then
      break;
  end;
  if (f) and (n='') then
    writeln('mozhno')
  else
    writeln('nelzya');
  readln();
end.   
vedro-compota's picture

решение засчитано

_____________
матфак вгу и остальная классика =)