Сумма цифр в двоичной записи равна 5.
Рассматривается множество целых чисел, принадлежащих числовому отрезку [31; 2047], которые удовлетворяют следующим условиям:
а) Число в двоичной записи оканчивается цифрой «0»;
б) Сумма цифр в двоичной записи равна 5;
в) Число не делится на 10.
Найдите количество таких чисел и максимальное из них.
В ответе запишите сначала количество, а потом максимальное число (через пробел).
Ответ:
Источник: «Павел Волгин»
Решение:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
m = 0 k = 0 for i in range(31, 2047 + 1): p = i s = 0 while p > 0: if p % 2 == 1: s += 1 p = p // 2 if i%2 == 0 and i%10 != 0 and s == 5: k += 1 if i > m: m = i print(k, m) |
Ответ: 206 1984