Решение модуля 5.5 Инди-курс программирования на Python

Модуль 5.5 (Метод подсчета. Сортировка подсчетом Python).

Ниже представлены примеры задач с решением на тему Метод подсчета. Сортировка подсчетом Python

Давайте на практике применим метод подсчета

На вход вашей программе поступает положительное целое число n, а ваша задача вывести в порядке возрастания все цифры, которые встречались в этом числе, и напротив каждого также необходимо вывести сколько раз данная цифра встречалась в числе n

a = list(map(int, str(input()))) # вводим строку и сразу преобразуем ее в список.
count = [0]*10                   # создаем список из 10 нулей для подсчета чисел (от 0 до 9)
for i in a:                      # Проходимся по нашему списку, считая какие цифры есть и сколько их. 
                                 # т.е.[i] это индекс нашего списка из 10 нулей. 
    count[i] += 1                # к каждому соответствующему индексу ставим +1 
for i in range(10):      # проходимся по заполненному списку (бывший из нулей)
    if count[i] > 0:     # выводим только те значения что не являются 0
        # печать i-ый индекс(цифра) и количество i-ых цифр в введеном числе
        print(i, count[i]) 

Сортировка подсчетом

Как видно из названия задачи, вам необходимо отсортировать список, состоящий только из чисел в пределах от -100 до 100 включительно, сортировкой подсчетом.

Программа получает на вход число n — количество элементов в списке, затем сами элементы списка

Вам необходимо вывести отсортированный список

P.S. не пользуйтесь встроенной функцией sorted или методом sort

n = int(input())
a = map(int, input().split())
count = [0] * 201  # список count заполняется нулями
for i in a:  # перебор всех элементов в а
    count[i] += 1  # к элементу count с индексом i прибавляется 1, т.е. подсчет сколько данное число встречается в а

for i in range(-100, 101):  # перебор в пределах от -100 до 100 включительно
    for _ in range(count[i]):  # если по индексу i в count есть ненулевое значение, оно будет выведено 
        #например count[i] =0 то ни чего не выведет
        #например count[i] =2 то цифру i выведет 2 раза 
        print(i, end=' ')  
Понравилась статья? Поделиться с друзьями:
Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x