advent-of-code-2025

Unnamed repository; edit this file 'description' to name the repository.
git clone git://git.alexwennerberg.com/advent-of-code-2025.git
Log | Files | Refs | README | LICENSE

02.f (473B)


      1 include ./utils/dmath.f
      2 11 constant pairs
      3 
      4 variable _tmp
      5 : str>double ( a u -- d ) _tmp 2! 0
      6     0 do dup r@ + c@ h# 30 - 0
      7     _tmp 2@ 10 1 m*/ d+ _tmp 2! loop drop _tmp 2@ ;
      8 
      9 : invalid ( a u -- d ) 
     10     .s cr
     11   2dup 2/ 2dup + over ( s1 s2 [each half] ) compare 
     12   if str>double else 2drop 0 0 then
     13   ;
     14 
     15 : next-pair ( -- a1 u1 a2 u2 ) [char] - parse
     16     [char] , parse  
     17     ;
     18 : solve 0 0 \ double
     19     pairs 0 do 
     20     next-pair invalid -rot invalid + + 
     21     loop d. bye ;