data_arrayのデータ位置とtree_arrayのデータ位置の間に何らかの関係があると思います。 int data[N];
int tree[M]; // lets M = 2^X-1, where X = nearest ceiling power of 2 to N;
void build_segment_tree();
data []のn番目の値がtree []のi番目の値に
OCamlでより速いバージョンの指数関数を見つけるのが難しいです。ここで私は従うことをしようとしているいくつかの注意事項は次のとおりです。 ではなくexpt b n ==> b * (b * (b ...)の典型的な再帰的な指数のバージョンは、この機能は、B二つの引数を受け取り、nおよび基本的に分割統治スタンスを取ります。 nが偶数の場合、nが、その後fastexpt b n => b * (b^