Хыиуду » 25 дек 2009, 09:59
1. Число перевести в строку, строку представить как массив символов и упорядочить по убыванию
2. То же по возрастанию, если первый символ - 0, поменять его местами с первым ненулевым.
1. Упорядочить по возрастанию.
2. Смотрим соседние темы, было такое.
3. В цикле if B
=B[i+1] then есть.
4. nums: array[0..255] of string; for i:=1 to N do nums[A]:=nums[A]+' '+inttostr(i);
Количество непустых строк в nums - число элементов. Каждая строка - список номеров одинаковых элементов, равных i.
5. for i:=2 to n do
if A=A[i-1] then inc(counter)
else begin if counter>max then max:=counter; counter:=1; end;
6.
Код: Выделить всё
var nums: array[0..9] of integer;
for i:=1 to n do begin
x:=i;
while x>0 do begin
inc(nums[x mod 10]);
x:=x div 10;
end;
end;
Все элементарно.
1. Число перевести в строку, строку представить как массив символов и упорядочить по убыванию
2. То же по возрастанию, если первый символ - 0, поменять его местами с первым ненулевым.
1. Упорядочить по возрастанию.
2. Смотрим соседние темы, было такое.
3. В цикле if B[i]=B[i+1] then есть.
4. nums: array[0..255] of string; for i:=1 to N do nums[A[i]]:=nums[A[i]]+' '+inttostr(i);
Количество непустых строк в nums - число элементов. Каждая строка - список номеров одинаковых элементов, равных i.
5. for i:=2 to n do
if A[i]=A[i-1] then inc(counter)
else begin if counter>max then max:=counter; counter:=1; end;
6.
[code]
var nums: array[0..9] of integer;
for i:=1 to n do begin
x:=i;
while x>0 do begin
inc(nums[x mod 10]);
x:=x div 10;
end;
end;
[/code]
Все элементарно.