Skip to main content
2 of 3
deleted 29 characters in body
dylnan
  • 5.4k
  • 2
  • 16
  • 33

Jelly, 22 bytes

DS=³a³ḍaDṫ³DLC¤Ḍ=³
Ç1#

Try it online!

Explanation

Ç1#                    Main Link

Ç                      Calls first link as a monad
 1#                    Count up and stop when you get first match 

First Link:

DS=³a³ḍaDṫ³DLC¤Ḍ=³     This is what Ç calls
                       
D                      Digits of incremented variable as a list
 S                     Sum
  =³                   Equals argument of program?
    a                  Logical and
     ³ḍ                Does arg divide incremented variable?
       a               Logical and
        Dṫ     Ḍ       Last n digits of inc. var. where n is number of digits in program input
          ³DLC         1 - (number of digits of program input)
              ¤        Book ends above nilad
                =³     Equals program input?

When all three conditionals in the first link are met the loop ends and outputs which iteration number it is.

This took me many hours to write because I'm learning Jelly but now that I'm done I'm so satisfied. For a long time I didn't realize I needed the ¤ and I just couldn't get it to work. Looking at this well explained code helped me seal the deal. Lots of other Jelly answers in PPCG guided me too.

dylnan
  • 5.4k
  • 2
  • 16
  • 33