v=[1,2,5,10,20,50,100,200] f=[[0 for i in range(205)] for j in range(10)] for i in range(8): for j in range(201): if i==0: f[i][j]=1 continue for k in range(j//v[i]+1): f[i][j]+=f[i-1][j-k*v[i]] print(f[7][200])