"""
Az ellenörzéshez
def átvált(n,m):
    ki=''
    while n>0:
        ki+=str(n%m)
        n=n//m
    return ki[::-1]
"""

def szjö(n,m):
    ki=0
    while n>0:
        ki+=(n%m)
        n=n//m
    return ki

ÖSSZES=[]
for i in range(10,1000000):
    lista=[0]*55
    for j in range(2,11):
        lista[szjö(i,j)]+=1
    ÖSSZES.append([i,max(lista)])
MAX=max([o[1] for o in ÖSSZES])
MAXOK=[]
for o in ÖSSZES:
    if o[1]==MAX:
        MAXOK.append(o[0])
print(MAX)
print(f"{' '.join(map(str,MAXOK))}")

"""
Az ellenörzéshez:
for n in MAXOK:
    print(f"{n}: ",end=' ')
    for j in range(2,11):
        print(f"{szjö(n, j)} ",end='')
    print()
for j in range(2,11):
    print(f"{j}: {átvált(2170,j)}")
print(lista)
"""
