ocaml: phase 5.1 segment_tree.ml baseline (range-sum tree, fingerprint 4232)
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 22s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 22s
Power-of-two-indexed segment tree over [1;3;5;7;9;11;13;15]: build sums (root holds total = 64) query returns range sum in O(log n) update propagates a point delta back up the path Sequence: r1 = query [2,5] = 5 + 7 + 9 + 11 = 32 update idx 3 += 10 (so a[3] becomes 17) r2 = query [2,5] = 5 + 17 + 9 + 11 = 42 encoded fingerprint = r1 + r2*100 = 32 + 4200 = 4232 Tests three mutually independent recursive functions with array index arithmetic on 2*node / 2*node+1, half-bisection on mid = (l+r)/2, bottom-up combine pattern. 167 baseline programs total.
This commit is contained in:
@@ -407,6 +407,15 @@ _Newest first._
|
||||
binary search tree (`type 'a tree = Leaf | Node of 'a * 'a tree *
|
||||
'a tree`) with insert + in-order traversal. Tests parametric ADT,
|
||||
recursive match, List.append, List.fold_left.
|
||||
- 2026-05-10 Phase 5.1 — segment_tree.ml baseline (range-sum
|
||||
segment tree over [1;3;5;7;9;11;13;15] with one point update,
|
||||
encoded r1 + r2*100 = 4232). build/query/update use the standard
|
||||
power-of-two indexing (node, 2·node, 2·node+1) over a flat
|
||||
4n-sized array. First range query 5+7+9+11=32; after adding 10
|
||||
to index 3, the same range = 5+17+9+11=42. Encoded: 32 + 42*100
|
||||
= 4232. Tests three mutually independent recursive functions
|
||||
with array index arithmetic, half-bisection on `mid = (l + r) / 2`,
|
||||
bottom-up combine pattern. 167 baseline programs total.
|
||||
- 2026-05-10 Phase 5.1 — magic_square.ml baseline (5×5 Siamese
|
||||
construction → main-diagonal sum 65, the magic constant for n=5).
|
||||
Place k=1 at (0, n/2); for each next k, move up-right with wrap-
|
||||
|
||||
Reference in New Issue
Block a user