# Sage code to compute sequence A004290 in the OEIS, by Eric M. Schmidt.
# I hereby waive all rights to this code, in accordance with the CC0
# waiver:
#
# http://creativecommons.org/publicdomain/zero/1.0/
#
# This code is based on C code by Rick Heylen found here
#
# http://www.mathpuzzle.com/Binary.html

# Compute smallest positive multiple of n whose base b representation
# has only 0's and 1's.
def minmulzo(n, b=10) :
    if n==0 : return 0
    pfrem = [-1] * n
    m = 0
    while pfrem[0] == -1:
        for r in xrange(n) :
            if pfrem[r] not in [-1,m] and pfrem[(r + b^m) % n] == -1 :
                pfrem[(r + b^m) % n] = m
        if pfrem[b^m % n] == -1 :
           pfrem[b^m % n] = m
        m += 1
    res = 0
    r = 0
    while r > 0 or res == 0:
        res += b^pfrem[r]
        r = (r - b^pfrem[r]) % n
    return res

[minmulzo(x) for x in [0..30]]