2D座標プレーンでポイント1からポイント2に到達するためのユニークな方法の数を見つけるように求められた質問に出くわしました。
注:これは、一般性を失うことなく想定できx1 < x2ますy1 < y2。
さらに、モーションは次のように制限されます。右または上にしか移動できません。有効な移動がから(xa, ya)if(xb, yb)およびxa < xb。であることを意味しますya < yb。
数学的には、これはによって見つけることができます( [(x2-x1)+(y2-y1)]! ) / [(x2-x1)!] * [(y2-y1)!]。私もコードについて考えました。
動的計画法でコーディングしたアプローチがあり、アプローチにはO([max(x2,y2)]^2)時間がかかりTheta( x2 * y2 )、上三角行列または下三角行列で管理できます。
実行時間がこれより短い他のアプローチを考えられますか?最小実行時間がである再帰的ソリューションを考えていますO(max(x2,y2))。