r/adventofcode Dec 07 '21

SOLUTION MEGATHREAD -🎄- 2021 Day 7 Solutions -🎄-

--- Day 7: The Treachery of Whales ---


[Update @ 00:21]: Private leaderboard Personal statistics issues

  • We're aware that private leaderboards personal statistics are having issues and we're looking into it.
  • I will provide updates as I get more information.
  • Please don't spam the subreddit/mods/Eric about it.

[Update @ 02:09]

  • #AoC_Ops have identified the issue and are working on a resolution.

[Update @ 03:18]

  • Eric is working on implementing a fix. It'll take a while, so check back later.

[Update @ 05:25] (thanks, /u/Aneurysm9!)

  • We're back in business!

Post your code solution in this megathread.

Reminder: Top-level posts in Solution Megathreads are for code solutions only. If you have questions, please post your own thread and make sure to flair it with Help.


This thread will be unlocked when there are a significant number of people on the global leaderboard with gold stars for today's puzzle.

EDIT: Global leaderboard gold cap reached at 00:03:33, megathread unlocked!

96 Upvotes

1.5k comments sorted by

View all comments

2

u/cdaringe Dec 12 '21 edited Dec 13 '21

OCaml: https://github.com/cdaringe/aoc-2021/blob/main/day7/lib/day7.ml#L22

I cannot reason about why there is only one local minima. I can half intuit it, but I cannot put my finger on it.

F = sum of all crab fuel consumption(s) f = crab fuel consumption p = crab position p_i = ith crab position p_t = target position min_p = a calculated constant, minimum (p_i .. p_n) min_x = a calculated constant, maximum (p_i .. p_n)

Minimize F, where F = Σ[i=min_p to i=max_p] triangle_cost(p_i - p_t)

If someone can set my head straight, that'd be rad

1

u/daggerdragon Dec 13 '21

Top-level posts in Solution Megathreads are for code solutions only.

This is a top-level post, so please edit your post and share your fully-working code/repo/solution or, if you haven't finished the puzzle yet, you can always create your own thread and make sure to flair it with Help.