challenges

my solutions to various "programming challenge" problems
git clone https://wehaveforgeathome.hates.computer/challenges.git
Log | Files | Refs | LICENSE

012.io (396B)


      1 #!/usr/local/bin/io
      2 
      3 d := method(n,
      4   d := 1
      5   lower := 2
      6   upper := n
      7   while(lower <= upper,
      8     if(upper % lower == 0,
      9       a := 0
     10       while(upper % lower == 0,
     11         a = a + 1
     12         upper = upper / lower
     13       )
     14       d = d * (a + 1) // thanks, Hardy
     15     )
     16     lower = lower + 1
     17   )
     18   d
     19 )
     20 
     21 target := 500
     22 n := 3
     23 T := 1 + 2 + 3
     24 while(d(T) <= target,
     25   n = n + 1
     26   T = T + n
     27 )
     28 
     29 T println