Var s,p1,p2:string; a:array['A'..'Z'] of byte; n,i,j,f:integer; c,sim:char; begin readln(n); readln(s); for c:='A' to 'Z' do a[c]:=0; for i:=1 to length(s) do a[s[i]]:=a[s[i]]+1; p1:=''; p2:=''; f:=0; for c:='A' to 'Z' do begin for j:=1 to a[c] div 2 do begin p1:=p1+c; p2:=c+p2; end; if (a[c] mod 2=1)and(f=0) then begin sim:=c; f:=1; end; end; if f=1 then p1:=p1+sim; p1:=p1+p2; writeln(p1); end.
Пример: 6 QAZQAZ AQZZQA
PS. Программа проверялась только для коротких (String) строк. Для длинных нужно использовать AnsiString.
Да,установка нелицензионной версии ОС windows xp является в этом случае не законной и нарушает права автора этого пакета(программы). Потому что компания приобрела у представителя компании ОС и установила уже программу ранее. Принцип лицензирования программного обеспечения — одна копия на один компьютер. Компьютер это аппаратная система, оснащенная запоминающим устройством, на которой может быть запущено программное обеспечение. Каждый аппаратный раздел или стоечный модуль считается отдельным компьютером.
a:array['A'..'Z'] of byte;
n,i,j,f:integer; c,sim:char;
begin
readln(n);
readln(s);
for c:='A' to 'Z' do a[c]:=0;
for i:=1 to length(s) do
a[s[i]]:=a[s[i]]+1;
p1:=''; p2:=''; f:=0;
for c:='A' to 'Z' do
begin
for j:=1 to a[c] div 2 do
begin p1:=p1+c; p2:=c+p2; end;
if (a[c] mod 2=1)and(f=0)
then begin sim:=c; f:=1; end;
end;
if f=1 then p1:=p1+sim;
p1:=p1+p2;
writeln(p1);
end.
Пример:
6
QAZQAZ
AQZZQA
PS. Программа проверялась только для коротких (String) строк. Для длинных нужно использовать AnsiString.