Golfcoder FAQ LOGIN
Error

Advent of Code Leaderboard 2023 / Day 15

View puzzle on adventofcode.com

Submit solution



Rules
  • You're welcome to participate alone or in a team.
  • You may submit multiple solutions and explore different programming languages.
  • Stick to the standard library of your language, no further dependencies/libraries, except the ones which OneCompiler provides (e.g. NumPy for Python).
  • Ensure your code aligns to the template (Python, Rust, Go, Kotlin, JavaScript, C#, TypeScript, C++, Java, C, Swift, Scala, Ruby), reading the puzzle input from stdin (terminated with end-of-file), and printing the solution to stdout.
  • Please refrain from making network requests, reading data from files, or storing data in variable/function/class names for reflection.

Leaderboard

Name Language Tokens Sum Tokens Part 1 Tokens Part 2 Last change
1 Profile imageDan Houghton Python 184 44 140 4 months ago
2 Profile imageVisible-Bag4062 Python 10046 46 - 4 months ago
3 Profile image1Codealot Python 10055 55 - 4 months ago
4 Profile imageTollyH C# 10064 64 - 4 months ago

140 tokens in Python for part 2 by Dan Houghton

Download solution

boxes=[{}for_inrange(256)]
forstringininput().split(","):
insert=string.strip("-").split("=")
name=insert.pop(0)
hash=0
forsinname:
hash+=ord(s)
hash*=17
hash%=256
ifinsert:
boxes[hash][name]=int(insert[0])
else:
boxes[hash].pop(name,0)
print(
sum(
box*slot*focal
forbox,lensesinenumerate(boxes,1)
forslot,focalinenumerate(lenses.values(),1)
)
)