Задача 8 урок 16
Primary tabs
Задача 8 урок 16
Проверить можно ли строки из m перестановкой символов получить строку n.
var m, n: string;
i, t, h: Integer;
begin
t:=0; //количество совпадений
writeln('Vvedite stroku');
readln(m);
writeln('Vvedite variantperestanovki');
readln(n);
for i:=1 to length(m) do
begin
for h:=1 to length(n) do
if m[i] = n[h] then
begin
inc(t);
n[h]:='`';
break;
end;
end;
if t = length(m)then
writeln('YAS!')
else
writeln('NO!');
readln();
end.- Log in to post comments
- 3155 reads
vedro-compota
Sun, 09/05/2021 - 12:17
Permalink
подумать как решить без замен
подумать как решить без замен
_____________
матфак вгу и остальная классика =)
boris68
Mon, 09/06/2021 - 22:44
Permalink
Решено с помощью перестановки
var m, n: string; v: char; i, t, h: Integer; begin //v - переменная временного хранения t:=0; //количество совпадений writeln('Vvedite stroku'); readln(m); writeln('Vvedite variant perestanovki'); readln(n); for i:=1 to length(m) do begin for h:=1 to length(n) do if m[i] = n[h] then begin inc(t); v:=n[h]; n[h]:=n[length(n)]; n[length(n)]:=v; break; end; end; if t = length(m)then writeln('YAS!') else writeln('NO!'); readln(); end.vedro-compota
Tue, 09/14/2021 - 22:26
Permalink
нельзя ли просто посчитать
нельзя ли просто посчитать число вхождения каждого элемента в строку и сделать вывод?
_____________
матфак вгу и остальная классика =)
boris68
Thu, 09/16/2021 - 14:35
Permalink
Переделано на подсчет элементов в строках
var m, n: string; i, t, t2, h, j: Integer; flag: boolean; begin flag:=true; t:=0; //количество совпадений t2:=0; writeln('Vvedite stroku'); readln(m); writeln('Vvedite variant perestanovki'); readln(n); if length(m)=length(n) then //если длины строк равны begin for i:=1 to length(m) do //берем элемент строки begin for h:=1 to length(m) do//смотрим солько его раз в строке if m[i] = m[h] then inc(t); //считаем (как минимум 1 совпадение) for j:=1 to length(n) do if n[j] = m[i] then inc(t2); //считаем совпадения по n массиву if t<>t2 then begin flag:=NOT flag; break; end; end; end; else flag:=NOT flaag; if flag then writeln('YAS!') else writeln('NO!'); readln(); end.vedro-compota
Sun, 09/19/2021 - 12:21
Permalink
решение засчитано
решение засчитано
_____________
матфак вгу и остальная классика =)