fork download
  1. exec'D,E,Q=input();J=0;exec"F=lambda u,m,j,i:+(j[i]<=u<j[-~i])if m<1else(u-j[i])/(j[i+m]-j[i])*F(u,~-m,j,i)+(j[-~i+m]-u)/(j[-~i+m]-j[-~i])*F(u,~-m,j,-~i);print F(D,E,Q,J);J+=1;"*(~-len(Q)-E);print;'*5
Success #stdin #stdout 0.02s 9024KB
stdin
.5,0,[0,.5,1]
.5,1,[-1,0,1,2]
.9,1,[-1,0,1,2,3]
1.1,1,[-1,0,1,2,3]
3.,3,[-1,0,1,2,3,8,10,12,15,20]
stdout
0
1

0.5
0.5

0.1
0.9
0.0

0.0
0.9
0.1

0.0
0.595238095238
0.383928571429
0.0208333333333
0.0
0.0