ocaml: phase 5.1 daily_temperatures.ml baseline (sum of waits = 10)
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 24s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 24s
Monotonic decreasing stack — for each day i, pop entries from the stack whose temperature is strictly less than today's; their answer is (i - popped_index). temps = [73; 74; 75; 71; 69; 72; 76; 73] answer = [ 1; 1; 4; 2; 1; 1; 0; 0] sum = 10 Complementary to next_greater.ml (iter 256) — same monotonic-stack skeleton but stores the distance to the next greater element rather than its value. Tests `match !stack with | top :: rest when …` pattern with guard inside a while-cont-flag loop. 198 baseline programs total.
This commit is contained in:
@@ -407,6 +407,16 @@ _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-11 Phase 5.1 — daily_temperatures.ml baseline (monotonic
|
||||
decreasing stack of waiting days until warmer; sum over
|
||||
[73;74;75;71;69;72;76;73] = 10). For each day i, pop all stack
|
||||
entries whose temperature is strictly less than today's,
|
||||
recording `i - top` for each. Result vector [1,1,4,2,1,1,0,0]
|
||||
sums to 10. Complementary to next_greater.ml — same monotonic-
|
||||
stack skeleton but stores the distance to the next greater
|
||||
element instead of its value. Tests pattern `match !stack with
|
||||
| top :: rest when condition -> … | _ -> exit` inside while.
|
||||
198 baseline programs total.
|
||||
- 2026-05-11 Phase 5.1 — count_bits.ml baseline (sum of popcount for
|
||||
0..100 = 319). DP recurrence: popcount(i) = popcount(i/2) +
|
||||
(i mod 2) — drop the low bit and recurse, adding back the bit
|
||||
|
||||
Reference in New Issue
Block a user