Irina Bakaev
?>

Питон поразрядная сортировка является одним из видов сортировки, которые работают за линейное от размера сортируемого массива время. такая скорость достигается за счет того, что эта сортировка использует внутреннюю структуру сортируемых объектов. изначально этот алгоритм использовался для сортировки перфокарт. первая его компьютерная реализация была создана в университете mit гарольдом сьюардом (harold н. seward опишем алгоритм подробнее. пусть задан массив строк s 1 ,   s i причем все строки имеют одинаковую длину m . работа алгоритма состоит из m фаз. на i -ой фазе строки сортируются па i -ой с конца букве. происходит это следующим образом. будем, для простоты, в этой рассматривать строки из цифр от 0 до 9. для каждой цифры создается «корзина» («bucket»), после чего строки s i распределяются по «корзинам» в соответствии с i -ой с конца цифрой. строки, у которых i -ая с конца цифра равна j в j -ую корзину (например, строка 123 на первой фазе попадет в третью корзину, на второй — во вторую, на третьей — в первую). после этого элементы извлекаются из корзин в порядке увеличения номера корзины. таким образом, после первой фазы строки отсортированы по последней цифре, после двух фаз - по двум последним, после m фаз - по всем. при важно, чтобы элементы в корзинах сохраняли тот же порядок, что и в исходном массиве (до начала этой фазы). например, если массив до первой фазы имеет вид: 111, 112, 211, 311, то элементы по корзинам распределятся следующим образом: в первой корзине будет. 111, 211, 311, а второй: 112. ваша состоит в написании программы, детально показывающей работу этого алгоритма на заданном массиве. входные данные первая строка входного файла содержит целое число n (1 ≤ n ≤ 1000) . последующие n строк содержат каждая по одной строке s i . длины всех s i , одинаковы и не превосходят 20. все s i состоят только из цифр от 0 до 9. выходные данные в выходной файл выведите исходный массив строк в, состояние «корзин» после распределения элементов по ним для каждой фазы и отсортированный массив. следуйте формату, в примере. примеры входные данные 9 12 32 45 67 98 29 61 35 09 выходные данные initial array: 12, 32, 45, 67, 98, 29, 61, 35, 09 ********** phase 1 bucket 0: empty bucket 1: 61 bucket 2: 12, 32 bucket 3: empty bucket 4: empty bucket 5: 45, 35 bucket 6: empty bucket 7: 67 bucket 8: 98 bucket 9: 29, 09 ********** phase 2 bucket 0: 09 bucket 1: 12 bucket 2: 29 bucket 3: 32, 35 bucket 4: 45 bucket 5: empty bucket 6: 61, 67 bucket 7: empty bucket 8: empty bucket 9: 98 ********** sorted array: 09, 12, 29, 32, 35, 45, 61, 67, 98

Информатика

Ответы

aregaa

ответ: попався двоечник сириус значит делаешь

объяснение:

triumfmodern
14+n  всего учеников в классе. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
aidapiltoyan43

универсальный вариант. долго над решением думать не хотелось, так что ответ такой.   поскольку ограничений на решение не было)

//pascalabc.net версия 3.4.0.1677 от 17.06.18

//если программа не запускается, то обновите версию

var

    n: integer;

    s: string;

begin

    readln(n);  

    s : = '';

    while n > 0 do

    begin

        s : = (n mod 10).tostring() + '0

        ' + s;

        n : = n div 10;

    end;

   

    writeln(s);

end.

Kazantsevv_kostya
Сводится к суммированию элементов массива v с целью нахождения их среднего арифметического. конечно, такую можно решать и без массива, поскольку нам придется все равно данные вводить с клавиатуры, но уж раз сказано, что "" сделаем с массивом. const   n = 7;   s = 'pvscpsv'; var   v: array[1..n] of double;   i: integer;   m: double; begin   writeln('вводите суммы ежедневного дохода по дням');   m : = 0;   for i : = 1 to n do   begin       write(s[i], ': ');       readln(v[i]);       m : = m + v[i]   end;   writeln('средний доход за неделю составляет ', m / n: 0: 3) end. тестовое решение: вводите суммы ежедневного дохода по дням p: 142539 v: 363135 s: 217432 c: 57395 p: 294722 s: 115390 v: 184933 средний доход за неделю составляет 196506.571

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Питон поразрядная сортировка является одним из видов сортировки, которые работают за линейное от размера сортируемого массива время. такая скорость достигается за счет того, что эта сортировка использует внутреннюю структуру сортируемых объектов. изначально этот алгоритм использовался для сортировки перфокарт. первая его компьютерная реализация была создана в университете mit гарольдом сьюардом (harold н. seward опишем алгоритм подробнее. пусть задан массив строк s 1 ,   s i причем все строки имеют одинаковую длину m . работа алгоритма состоит из m фаз. на i -ой фазе строки сортируются па i -ой с конца букве. происходит это следующим образом. будем, для простоты, в этой рассматривать строки из цифр от 0 до 9. для каждой цифры создается «корзина» («bucket»), после чего строки s i распределяются по «корзинам» в соответствии с i -ой с конца цифрой. строки, у которых i -ая с конца цифра равна j в j -ую корзину (например, строка 123 на первой фазе попадет в третью корзину, на второй — во вторую, на третьей — в первую). после этого элементы извлекаются из корзин в порядке увеличения номера корзины. таким образом, после первой фазы строки отсортированы по последней цифре, после двух фаз - по двум последним, после m фаз - по всем. при важно, чтобы элементы в корзинах сохраняли тот же порядок, что и в исходном массиве (до начала этой фазы). например, если массив до первой фазы имеет вид: 111, 112, 211, 311, то элементы по корзинам распределятся следующим образом: в первой корзине будет. 111, 211, 311, а второй: 112. ваша состоит в написании программы, детально показывающей работу этого алгоритма на заданном массиве. входные данные первая строка входного файла содержит целое число n (1 ≤ n ≤ 1000) . последующие n строк содержат каждая по одной строке s i . длины всех s i , одинаковы и не превосходят 20. все s i состоят только из цифр от 0 до 9. выходные данные в выходной файл выведите исходный массив строк в, состояние «корзин» после распределения элементов по ним для каждой фазы и отсортированный массив. следуйте формату, в примере. примеры входные данные 9 12 32 45 67 98 29 61 35 09 выходные данные initial array: 12, 32, 45, 67, 98, 29, 61, 35, 09 ********** phase 1 bucket 0: empty bucket 1: 61 bucket 2: 12, 32 bucket 3: empty bucket 4: empty bucket 5: 45, 35 bucket 6: empty bucket 7: 67 bucket 8: 98 bucket 9: 29, 09 ********** phase 2 bucket 0: 09 bucket 1: 12 bucket 2: 29 bucket 3: 32, 35 bucket 4: 45 bucket 5: empty bucket 6: 61, 67 bucket 7: empty bucket 8: empty bucket 9: 98 ********** sorted array: 09, 12, 29, 32, 35, 45, 61, 67, 98
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Lesya
migor72
Рафаэль633
samuilik-v
buriginast5
far-yuliya128
Nicovideo.jp/watch/sm36992272
Artyom
Ivanova.i.bkrasheninnikov
orinvarostov
Татьяна
movlam11
Александрович686
allo01
alexluu33
Алексей Шуклин