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 4 days ago
2 Profile imageN. Adhikary Python 151 76 75 21 hours ago
3 Profile image53142 Python 177 88 89 4 days ago
4 Profile imageAbbas Moosajee Python 180 85 95 4 days ago
5 Profile imageVadzim Kapichenka Kotlin 184 82 102 11 hours ago
6 Profile imageprogheal C++ 198 85 113 4 days ago
7 Profile imageValentin Slawicek Kotlin 201 92 109 3 days ago
8 Profile imageAkke C 352 159 193 3 days ago
9 Profile imageWim Jeantine-Glenn Python 926 463 463 4 days ago
10 Profile imageAllan Taylor Python 10138 138 - 4 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.

193 tokens in C for part 2 by Akke

Download solution

#include<stdlib.h>

intmain(void)
{
charbuf[999],s[999],*r=buf,*p;
longsum=0,fst,lst,n,is_invalid;
gets(buf);
while(*r){
fst=atol(r);while(*r!='-')r++;
lst=-atol(r);while(r[-1]!=','&&r[-1])r++;
while(fst<=lst){
sprintf(s,"%lu",fst);
for(n=1,is_invalid=0;n<=strlen(s)/2;n++){
for(p=s;!strncmp(s,p,n);)
p+=n;
is_invalid|=(!(strlen(s)%n)&!strlen(p));
}
sum+=(fst++)*is_invalid;
}
}
printf("%lu\n",sum);
return0;
}