Advertisement
Lesnic

23

Apr 6th, 2021
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. #основная идея пойти с конца расписывать все варики, так как сначала лень. Если взглянуть на начало, то 2 операция работает ток если это применимо к число от 21 до 29. Затем ток 1 и 3. Это делается и ручками, но там можно запутаться и это проверка)
  2. def first(num: int) -> int:
  3. return num + num % 10
  4.  
  5.  
  6. def second(num: int) -> int:
  7. return num * (num // 10)
  8.  
  9.  
  10. def third(num: int) -> int:
  11. return num + abs(num // 10 - num % 10)
  12.  
  13.  
  14. d = {62: 1}
  15. for i in range(61, 20, -1):
  16. d[i] = 0
  17. temp = first(i)
  18. if temp in d.keys() and temp != i:
  19. d[i] += d[temp]
  20. temp = second(i)
  21. if temp in d.keys() and temp != i:
  22. d[i] += d[temp]
  23. temp = third(i)
  24. if temp in d.keys() and temp != i:
  25. d[i] += d[temp]
  26. print(d[21])
  27.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement