Я работаю над программой на Python, в которой я хочу найти минимальное количество шагов, необходимых для достижения верхнего этажа, чтобы число шагов делилось на заданное число, скажем m
Вотмоя программа взята из здесь :
# A program to count the number of ways to reach n'th stair
# Recurssive program to find n'th fibonacci number
def fib(n):
if n <= 1:
return n
return fib(n-1) + fib(n-2)
# returns no. of ways to reach s'th stair
def countWays(s):
return fib(s + 1)
# Driver program
s = 10
print("Number of ways = ", countWays(s) )
Здесь я получаю общее количество способов, но я хочу отфильтровать их по тем, которые делятся на данное число, скажем m
, каксделать это?
Example:
1) s = 10 and m = 2, output should be 6, as the steps are {2,2,2,2,1,1}
2) s = 3 and m = 5 output should be -1 as the possible steps are {1,1,1}, {2,1}, {1,2}
--> here none of them (means 3 steps, 2 steps, 2 steps) are divible by 5.