f=->m,n,r=[]{m>1?(r[-1]||1).upto(n/m){|c|f[m-1,n-c,r+[c]]}:(puts (r<