Golfcoder FAQ LOGIN
Error

Advent of Code Leaderboard 2025 / Day 2

View puzzle on adventofcode.com

Submit solution



Leaderboard

Name Language Tokens Sum Tokens Part 1 Tokens Part 2 Last change
1 Profile imageFrederik Bonfanti Ruby 113 56 57 24 days ago
2 Profile imageN. Adhikary Python 151 76 75 20 days ago
3 Profile image53142 Python 177 88 89 24 days ago
4 Profile imageAbbas Moosajee Python 180 85 95 24 days ago
5 Profile imageVadzim Kapichenka Kotlin 184 82 102 20 days ago
6 Profile imageprogheal C++ 198 85 113 24 days ago
7 Profile imageValentin Slawicek Kotlin 201 92 109 23 days ago
8 Profile imageAkke C 352 159 193 23 days ago
9 Profile imageWim Jeantine-Glenn Python 926 463 463 24 days ago
10 Profile imageAllan Taylor Python 10138 138 - 24 days ago
11 Profile imageN. Adhikary Kotlin 10227 227 - 12 days ago

Solutions with 1 unsolved part get a penalty of 10000 tokens (indicated with "-").

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, Bash), 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.
  • Your code must be able to process all valid Advent of Code inputs. Golfcoder might reevaluate correctness of your solution with different inputs after your submission.

227 tokens in Kotlin for part 1 by N. Adhikary

Download solution

funD(n:Long):Boolean{vals=n.toString()returns.length%2==0&&s.substring(0,s.length/2)==s.substring(s.length/2)}
funR(n:Long):Boolean{vals=n.toString()return(1untils.length).any{k->s.length%k==0&&s.substring(0,k).repeat(s.length/k)==s}}
funmain(){vald=generateSequence(::readLine).joinToString("").trim()vara=0Lvarb=0Lfor(rind.split(",")){if(r.isBlank())continueval(lo,hi)=r.split("-").map{it.toLong()}for(ninlo..hi){if(D(n))a+=nif(R(n))b+=n}}println(a)}