print1. Сортировка и поиск

printРазбор задачи 163. Анаграммы

var
  c:array['a'..'z'] of integer; { массив счетчиков 
                в качестве индекса используем буквы }
  s:string;
  ch:char;
  i,sum:integer;
begin
  readln(s); { ввод строки с анаграммой }
  for i:=1 to length(s) do
    inc(c[s[i]]); { или c[s[i]]:=c[s[i]]+1; }
  readln(s); { ввод строки с расшифровкой }
  for i:=1 to length(s) do
    if s[i] <> ' ' then { для букв }
      dec(c[s[i]]); { или c[s[i]]:=c[s[i]]-1; }
  sum:=0; { количество лишних букв }
  for ch:='a' to 'z' do
    if c[ch]<0 then
    begin
      writeln(-1); { нет соответствия - 
          число букв ch в расшифровке больше, чем в анаграмме }
      halt; { завершение программы }
    end
    else 
      inc(sum, c[ch]); { или sum:=sum+c[ch] }
  writeln(sum);
end.
loading