, , 2D-, node node , node .
, . , , .
(.. ), , , , . ,
number_paths(i,j)=number_of_paths(i-1,j)+number_of_paths(i,j-1)
. node , . ( , node node node.)
, , , , . , X. , . node , X. node (.. ) Xe, e - . node, node. , , , node, node 0 (.. , ).
, , 3 2, ( , 3D-, 3- ). node (x_start,y_start,cost), node (x_end,y_end,0). :
paths(x,y,cost_left)=
0 if x_end,y_end is unreachable from x,y or cost_left<0
1 if x==X-end and y==y_end and cost_left==0
paths(x-1,y,cost_left-edge(x,y,x-1,y))+paths(x,y-1,cost_left-edge(x,y,x,u-1)) otherwise
O (nmC), n m - , C - .