私は次の再帰関数を持っています:
typedef unsigned long long ull;
ull calc(ull b, ull e)
{
if (!b) return e;
if (!e) return b;
return calc(b - 1, e - 1) + calc(b - 1, e) - calc(b, e - 1);
}
動的計画法(つまり、ストレージを使用)で実装したいと思います。使ってみましたmap<pair<ull, ull>, ull>
が、遅すぎます。配列を使って実装することもできませんでしO(1)
た。
b, e
この関数が大きなsをすばやく解決できるように解決策を見つけたいと思います。