36 lines
546 B
Python
36 lines
546 B
Python
import sys
|
|
sys.setrecursionlimit(10**6)
|
|
|
|
input = sys.stdin.readline
|
|
|
|
N = int(input())
|
|
arr= [0] * (10**N)
|
|
arr[0] = 1
|
|
arr[1] = 1
|
|
result = []
|
|
|
|
def is_prime(n):
|
|
|
|
|
|
def prime(n):
|
|
p=2
|
|
while(p*p<n):
|
|
if
|
|
|
|
def dfs(u, digit):
|
|
if(u >= (10**N) or digit>=N) :
|
|
if(arr[u]==0):
|
|
result.append(u)
|
|
return
|
|
if(arr[u]==1) : return
|
|
else :
|
|
for i in range(1, 10):
|
|
dfs(u+(i*(10**digit)), digit+1)
|
|
|
|
for i in range(1, 10):
|
|
dfs(i, 1)
|
|
|
|
sorarr=sorted(set(result))
|
|
|
|
for i in sorarr:
|
|
print(i) |