CSES - Hyppely

Pelaat peliä, jossa on nn tasoa. Olet aluksi tasolla 00 ja sinun tulee päästä tasolle nn. Joka askeleella voit hypätä aa tai bb tasoa ylemmäs. Monellako tavalla voit läpäistä pelin?

Esimerkiksi kun n=4n=4, a=1a=1 ja b=2b=2, tapoja on 55:

  • 012340 \rightarrow 1 \rightarrow 2 \rightarrow 3 \rightarrow 4
  • 01240 \rightarrow 1 \rightarrow 2 \rightarrow 4
  • 01340 \rightarrow 1 \rightarrow 3 \rightarrow 4
  • 02340 \rightarrow 2 \rightarrow 3 \rightarrow 4
  • 0240 \rightarrow 2 \rightarrow 4

Voit olettaa, että 3n503 \le n \le 50 ja 1a<bn1 \le a < b \le n.

Toteuta tiedostoon jumping.py funktio count, joka ilmoittaa vastauksen.

def count(n,a,b):
    # TODO

if __name__ == "__main__":
    print(count(4,1,2)) # 5
    print(count(10,2,5)) # 2
    print(count(10,6,7)) # 0
    print(count(30,3,5)) # 58
    print(count(50,2,3)) # 525456