Golfcoder FAQ LOGIN
Error

Advent of Code Leaderboard 2023 / Day 18

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 imageLiquidFun Python 273 135 138 10 months ago
2 Profile imageSharparam Ruby 351 181 170 11 months ago

181 tokens in Ruby for part 1 by Sharparam

Download solution

require'matrix'

D={?R=>Vector[1,0],?D=>Vector[0,1],?L=>Vector[-1,0],?U=>Vector[0,-1]}

puts$<.read.scan(/([A-Z]) (\d+)/).reduce([Vector[0,0]]){|a,(d,c)|
[*a,a.last+D[d]*c.to_i]
}.each_cons(2).sum{|c,n|
c[0]*n[1]-n[0]*c[1]+(c[0]-n[0]).abs+(c[1]-n[1]).abs
}/2+1