• Дан набор из N целых положительных чисел. Необходимо определить, какая цифра чаще всего встречается в десятичной записи чисел этого набора. Если таких цифр несколько, необходимо вывести наибольшую из них.

    Напишите эффективную по времени и по памяти программу для решения этой задачи.
    Программа считается эффективной по времени, если при увеличении количества исходных чисел N в k раз время работы программы увеличивается не более чем в k раз.
    Программа считается эффективной по памяти, если память, необходимая для хранения всех переменных программы, не превышает одного килобайта и не увеличивается с ростом N.


    Описание входных и выходных данных

    В первой строке входных данных задаётся количество чисел N (1 ≤ N ≤ 1000).
    В каждой из последующих N строк записано одно натуральное число, не превышающее 10 000.

    Пример входных данных:
    3
    15
    25
    32
    Пример выходных данных для приведённого выше примера входных данных:
    5

    В десятичной записи чисел заданного набора чаще всего – по 2 раза – встречаются цифры 2 и 5, большая из них – 5.

Ответы 2

  • var a:array[1..1000] of integer;k:array[0..9] of integer;n,i,m:integer; beginreadln(n);for i:=1 to n do readln(a[i]);for i:=0 to 9 do k[i]:=0;for i:=1 to n do begin m:=a[i]; while m>0 do  begin  inc(k[m mod 10]);  m:=m div 10;  end; end;m:=0;for i:=1 to 9 do if k[i]>=k[m] then m:=i;writeln(m);end.Пример:31525325
    • Автор:

      mimi58
    • 5 лет назад
    • 0
  • // PascalABC.NET 3.2, сборка 1387 от 20.02.2017// Внимание! Если программа не работает, обновите версию!begin  var n:=ReadlnInteger;  var d:=new Dictionary<char,integer>;  for var i:=1 to n do    foreach var e in ReadlnInteger.ToString do      d[e]:=d.Get(e)+1;  d.OrderByDescending(x->x.Value).ThenByDescending(x->x.Key)      .Select(x->x.Key).Take(1).Printlnend.И это - всё. Работает точно в соответствии с примером, поэтому результатов не привожу.
    • Автор:

      khan
    • 5 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years