ocaml: phase 5.1 prefix_sum.ml baseline (precomputed sums + range queries, 14+25+27 = 66)
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 28s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 28s
Two utility functions:
prefix_sums xs builds Array of len n+1 such that
arr.(i) = sum of xs[0..i-1]
range_sum p lo hi = p.(hi+1) - p.(lo)
For [3;1;4;1;5;9;2;6;5;3]:
range_sum 0 4 = 14 (3+1+4+1+5)
range_sum 5 9 = 25 (9+2+6+5+3)
range_sum 2 7 = 27 (4+1+5+9+2+6)
sum = 66
Tests List.iter mutating Array indexed by a ref counter, plus the
classic prefix-sum technique for O(1) range queries.
67 baseline programs total.
This commit is contained in:
@@ -407,6 +407,13 @@ _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-09 Phase 5.1 — prefix_sum.ml baseline (precomputed prefix
|
||||
sums for O(1) range queries, sum of three queries = 66).
|
||||
prefix_sums xs returns an Array of len n+1 such that
|
||||
`arr.(i) = sum of xs[0..i-1]`. range_sum computes any contiguous
|
||||
subarray sum in O(1) via subtraction. Tests List.iter mutating
|
||||
Array indexed by ref counter, plus the classic prefix-sum
|
||||
technique. 67 baseline programs total.
|
||||
- 2026-05-09 Phase 5.1 — tic_tac_toe.ml baseline (3x3 winner check,
|
||||
X wins top row → 1). Board encoded as 9-element flat int array
|
||||
with 0=empty, 1=X, 2=O. Three predicate functions check row,
|
||||
|
||||
Reference in New Issue
Block a user