написать программу на пайтоне. Не совсем понимаю, что от меня хотят. Сегодня знаменательный день! В Межгалактическом Обществе Программистов сразу у n программистов день рождения! Поскольку программисты в этом обществе – очень дружный народ, они решили отпраздновать эти дни рождения все вместе.
Как известно, все разумные существа во вселенной в день рождения зажигают свечки на торте. Программисты зажигают свечки в соответствии с двоичной записью числа. Например, если программисту исполнилось 24 года, он втыкает в торт 5 свечек и зажигает только первые 2, поскольку 2410 = 110002, a если ему исполнилось 31, то придется зажечь все 5 свечек.
Программисты быстро заметили, что если свечка не была зажжена то ее можно вытащить из торта и воткнуть в следующий. Конечно, они не хотят расходовать лишних свечек и поэтому решили посчитать, в каком порядке стоит праздновать дни рождения, чтобы минимизировать их расход.
Поскольку общество межгалактическое, в нем есть индивиды самого разного возраста от 1 до 109 лет.
Напишите программу, которая определяет наименьшее количество свечек, которое потребуется, чтобы отпраздновать все дни рождения.
Формат входных данных
В первой строке находится одно число n (1 ≤ n ≤ 100) – количество программистов.
Во второй строке находится n чисел ai (1 ≤ ai ≤ 109) – сколько лет исполняется каждому программисту.
Формат результата
В единственной строке выведите одно целое число – минимальное количество свечек, которые придется потратить.
Примеры
Входные данные
3
1 2 4
Результат работы
3
Входные данные
3
5 2 1
Результат работы
4
# смысл программы -- посчитать количество единичных битов в переведенных в двоичную сс чисел
# ввод n
n = int(input())
#печатаем сумму единиц у чисел после перевода
print(sum(sum(int(u) for u in bin(int(x)) if u=='1') for x in input().split()))
n = int(input())
numbers = [int(i) for i in input().split()]
print(n + sum(numbers) // (2 ** n))
Объяснение:
Зашло!!1!1!)