n = int(input())
cnt = 0
ans = 0
x = 666
while(cnt<n):
tmp = x
isEnd = False
#해당 숫자의 종말의 수 판별
while(tmp>=666):
if tmp % 1000 == 666:
isEnd=True
tmp //=10
#종말의 수라면 cnt 더하고 ans에 넣어주기
if isEnd:
cnt+=1
ans=x
x+=1
print(ans)
문제 해결을 위해 접근한 방식은 일단 cnt라는 변수를 설정해 n개의 종말의 수를 구할 때까지 while문을 반복하고 해당 숫자가 종말의 수 여부를 판독하기 위해 해당 숫자를 666이상일 동안 10으로 나누고
1000으로 나눈 나머지가 666이 되면 종말의 숫자이므로 cnt에 더해주고 ans에도 넣어 주었다
처음에는 6660 은 종말의 숫자로 판독하지만 6661, 6662 등은 종말의 수로 판단하지 않는 오류가 발생했는데
이는 tmp//=10 이부분을 tmp/=10 으로 했었기 때문이다.
이렇게 되면 10으로 나누어 떨어지지 않는 경우에는 자연수가 아니게 된다.