|
Отправлено: 08.05.22 11:39. Заголовок: Ошибка в ответе 21 №32
В ответе пишет 0, хотя одно значение S есть - 15 def f(a,b,n): if a + b >= 40 or n > 4: return n == 2 or n == 4 if n % 2 == 0: return all([f(a + 1, b, n + 1), f(a * 2, b, n + 1), f(a, b + 1, n + 1), f(a, b * 2, n + 1)]) return any([f(a + 1, b, n + 1), f(a * 2, b, n + 1), f(a, b + 1, n + 1), f(a, b * 2, n + 1)]) print(len([s for s in range(1, 31) if f(9,s,0)]), [s for s in range(1, 31) if f(9,s,0)]) Программу проверил на следующих задачах с тем же условием, всё сходилось
|
|
Отправлено: 08.05.22 12:15. Заголовок: Извиняюсь, нашёл оши..
Извиняюсь, нашёл ошибку, 15 не подходит по 2-ому условию, чтобы это проверить, мне нужно было вместо "n > 4" написать "n > 2" в третей строке. Также извиняюсь за дублирование поста и за неправильное оформление
|