this repo has no description

chore: small cleanups

+114 -20
+114 -20
2022/day12.livemd
··· 100 100 101 101 ``` 102 102 warning: variable "graph" is unused (there is a variable with the same name in the context, use the pin operator (^) to match on it or prefix this variable with underscore if it is not meant to be used) 103 - 2022/day12.livemd#cell:7urrvoyk6ltuxa4kdqc63nncfh37x2fn:30 103 + 2022/day12.livemd#cell:6nz6sdhe57lxfvshc57dctj7qaalwwz3:42 104 104 105 105 ``` 106 106 ··· 207 207 <!-- livebook:{"output":true} --> 208 208 209 209 ``` 210 - [32256290, 409066827, 186924390, 1502865800, 887663648, 2543466388, 697356458, 1070575781, 211 - 1659702078, 4000784021, 1947564743, 2361038489, 3904452243, 3615669650, 270460033, 1281654811, 212 - 3153535741, 2393890474, 3946102901, 2210758189, 2982223724, 2654353783, 2656280720, 3935389969, 213 - 2818948768, 4279780723, 3595206681, 3496428192, 2269119594, 2583881244, 3997991000, 520325395, 214 - 457672928, 1453390554, 3289433936, 2574402082, 1560492086, 3242480874, 389839366, 4176230802, 215 - 1147783117, 2469841095, 2034019869, 438932546, 1799582666, 1100008137, 467060197, 162439868, 216 - 3928107970, 800548913, ...] 210 + [ 211 + {59, 38}, 212 + {38, 5}, 213 + {76, 17}, 214 + {66, 36}, 215 + {54, 26}, 216 + {10, 18}, 217 + {3, 21}, 218 + {42, 40}, 219 + {73, 32}, 220 + {43, 36}, 221 + {2, 9}, 222 + {80, 31}, 223 + {20, 12}, 224 + {63, 11}, 225 + {5, 15}, 226 + {76, 4}, 227 + {136, 4}, 228 + {3, 9}, 229 + {90, 11}, 230 + {85, 39}, 231 + {24, 29}, 232 + {91, 28}, 233 + {55, 27}, 234 + {108, 10}, 235 + {84, 4}, 236 + {9, 9}, 237 + {161, 38}, 238 + {3, 33}, 239 + {68, 22}, 240 + {143, 3}, 241 + {49, 8}, 242 + {70, 26}, 243 + {39, 25}, 244 + {18, 13}, 245 + {88, 0}, 246 + {32, 21}, 247 + {96, 3}, 248 + {84, 40}, 249 + {53, 1}, 250 + {88, 30}, 251 + {120, 10}, 252 + {36, 4}, 253 + {115, 13}, 254 + {112, 3}, 255 + {42, 0}, 256 + {4, 17}, 257 + {35, 12}, 258 + {114, 19}, 259 + {20, ...}, 260 + {...}, 261 + ... 262 + ] 217 263 ``` 218 264 219 265 ```elixir ··· 258 304 if has_negative_cycle?(distances, weights) do 259 305 nil 260 306 else 261 - Map.new(distances, fn {k, v} -> {Map.fetch!(vertices, k), v} end) 307 + Map.new(distances, fn {k, v} -> {Map.fetch!(vs, k), v} end) 262 308 end 263 309 end 264 310 ··· 286 332 <!-- livebook:{"output":true} --> 287 333 288 334 ``` 289 - {:module, BellmanFord, <<70, 79, 82, 49, 0, 0, 19, ...>>, {:has_negative_cycle?, 2}} 335 + {:module, BellmanFord, <<70, 79, 82, 49, 0, 0, 18, ...>>, {:has_negative_cycle?, 2}} 290 336 ``` 291 337 292 338 ```elixir 293 - min_paths = 339 + paths = 294 340 tgraph 295 341 # |> Graph.bellman_ford(stop) 296 342 |> BellmanFord.call(stop) 297 - |> Map.take(lowest) 298 - |> Map.values() 299 343 ``` 300 344 301 345 <!-- livebook:{"output":true} --> 302 346 303 347 ``` 304 - [:infinity, :infinity, :infinity, 454, :infinity, :infinity, :infinity, :infinity, :infinity, 305 - :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, 306 - :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, 307 - :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, 308 - :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, :infinity, 309 - :infinity, :infinity, :infinity, :infinity, :infinity, ...] 348 + %{ 349 + {76, 13} => :infinity, 350 + {38, 2} => :infinity, 351 + {1, 26} => 430, 352 + {140, 11} => 100, 353 + {32, 15} => 388, 354 + {89, 14} => 328, 355 + {35, 30} => 392, 356 + {156, 9} => :infinity, 357 + {4, 5} => 454, 358 + {74, 12} => :infinity, 359 + {11, 39} => 425, 360 + {131, 5} => 323, 361 + {22, 38} => 413, 362 + {29, 25} => 403, 363 + {86, 10} => :infinity, 364 + {83, 36} => 366, 365 + {29, 26} => 402, 366 + {47, 27} => :infinity, 367 + {9, 34} => 426, 368 + {137, 16} => 12, 369 + {90, 0} => :infinity, 370 + {103, 39} => 289, 371 + {126, 13} => :infinity, 372 + {47, 38} => :infinity, 373 + {128, 35} => 268, 374 + {20, 3} => 412, 375 + {145, 20} => 24, 376 + {143, 39} => 247, 377 + {79, 17} => 335, 378 + {75, 0} => :infinity, 379 + {150, 18} => 167, 380 + {147, 10} => 178, 381 + {148, 26} => 75, 382 + {76, 2} => :infinity, 383 + {138, 9} => 104, 384 + {58, 33} => 372, 385 + {150, 5} => 296, 386 + {54, 31} => 374, 387 + {22, 37} => 412, 388 + {75, 36} => :infinity, 389 + {91, 35} => :infinity, 390 + {143, 4} => :infinity, 391 + {121, 27} => 283, 392 + {91, 38} => :infinity, 393 + {159, 26} => 268, 394 + {131, 24} => 124, 395 + {58, 10} => 367, 396 + {111, 14} => :infinity, 397 + {75, ...} => 345, 398 + {...} => 411, 399 + ... 400 + } 310 401 ``` 311 402 312 403 ```elixir 313 - Enum.min(min_paths) 404 + paths 405 + |> Map.take(lowest) 406 + |> Map.values() 407 + |> Enum.min() 314 408 ``` 315 409 316 410 <!-- livebook:{"output":true} -->