···
|> list.index_map(fn(line, i) {
···
44
-
let #(beams, times) =
46
-
|> list.fold(#(set.new() |> set.insert(start), 0), fn(acc, splitters) {
44
+
let #(_beams, times) =
46
+
|> list.fold(#(set.new() |> set.insert(start), 0), fn(acc, splitters) {
47
+
let #(beams, times) = acc
49
+
|> set.fold(#(beams, times), fn(acc, beam) {
let #(beams, times) = acc
49
-
|> set.fold(#(beams, times), fn(acc, beam) {
50
-
let #(beams, times) = acc
51
-
case splitters |> set.contains(beam) {
57
-
|> set.insert(beam - 1)
58
-
|> set.insert(beam + 1),
51
+
case splitters |> set.contains(beam) {
56
+
|> set.insert(beam - 1)
57
+
|> set.insert(beam + 1),
70
+
|> list.fold(dict.new() |> dict.insert(0, start), fn(timelines, splitters) {
71
+
// echo #(timelines, splitters)
73
+
|> dict.fold(timelines, fn(timelines, timeline, beam) {
74
+
case splitters |> set.contains(beam) {
78
+
|> dict.delete(timeline)
80
+
int.random(100_000_000_000_000_000_000_000),
84
+
int.random(100_000_000_000_000_000_000_000),
65
-
echo set.size(beams)