Автор | Сообщение |
|
Отправлено: 17.06.22 10:41. Заголовок: 8 задание №4253
В ответе указано 129, у меня получилось 130. Может быть автор не считал за число комбинацию "0000"? Правильно 129, без этой комбинации?
|
|
|
Ответов - 5
[только новые]
|
|
|
Отправлено: 17.06.22 12:48. Заголовок: Скорее всего, вы пра..
Скорее всего, вы правы. 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)
|
|
|
|
| Администратор
|
Сообщение: 3595
|
|
Отправлено: 24.06.22 10:10. Заголовок: Aniri пишет: Может ..
Aniri пишет: цитата: | Может быть автор не считал за число комбинацию "0000"? |
|
По условию рассматриваются только 4-значные числа, без учета незначащих нулей.
|
|
|
|
Отправлено: 19.02.23 14:27. Заголовок: Вопрос
Автор предлагает, чтобы цифры в числе шли по невозрастанию, предполагает это что цифры могут повторяться? Невозрастание обычно предполагает убывание.
|
|
|
|
| Администратор
|
Сообщение: 3909
|
|
Отправлено: 19.02.23 14:45. Заголовок: nuriatalgatovna пише..
nuriatalgatovna пишет: цитата: | предполагает это что цифры могут повторяться? |
|
Да. Вот авторское решение: 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)
|
|
|
|
Отправлено: 19.02.23 15:39. Заголовок: Спасибо
Спасибо, тогда предлагаем такой вариант. 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))
|
|
|
|