Форум » Кодирование и декодирование информации » 8 задание №4253 » Ответить

8 задание №4253

Aniri: В ответе указано 129, у меня получилось 130. Может быть автор не считал за число комбинацию "0000"? Правильно 129, без этой комбинации?

Ответов - 5

zachto: Скорее всего, вы правы. [pre2] r = 0 for i in range(0, 7, 2): for j in range(0, i + 1): for k in range(0, j + 1): for t in range(0, k + 1): r += 1 print(r) [/pre2]

Поляков: Aniri пишет: Может быть автор не считал за число комбинацию "0000"? По условию рассматриваются только 4-значные числа, без учета незначащих нулей.

nuriatalgatovna: Автор предлагает, чтобы цифры в числе шли по невозрастанию, предполагает это что цифры могут повторяться? Невозрастание обычно предполагает убывание.


Поляков: nuriatalgatovna пишет: предполагает это что цифры могут повторяться? Да. Вот авторское решение: [pre2] count = 0 even = '0246' for x in range(8 ** 3, 8 ** 4): oct_x = oct(x)[2:] if oct_x[0] in even and all(oct_x[ i] >= oct_x[i + 1] for i in range(3)): count += 1 print(count)[/pre2]

nuriatalgatovna: Спасибо, тогда предлагаем такой вариант. from itertools import * w = set() for s in product('01234567',repeat = 4): s = ''.join(s) if s[0] in '246' and s[0]>=s[1]>=s[2]>=s[3]: w.add(s) print(w) print(len(w))



полная версия страницы