Coding test
[백준/4375/파이썬] 1
코드짜는쿤스트
2023. 2. 13. 09:18
소스코드
def one(n):
ones = [1]
i = 1
while (1):
if ones[-1] % n == 0 :
return ones[-1]
else :
ones.append(ones[-1]+10**i)
i += 1
while (1):
try:
n = int(input())
except:
break
print(len(str(one(n))))
알고리즘
n의 배수라는 건 결국 어떤수를 n으로 나눴을때 나머지가 0 이라는 것이다.
따라서 1로만 이루어진 list를 만들어서 ( ones[1,11,111,...])
마지막 숫자 + 10의 배수를 해주면 1로만 이뤄진 list가 생성이 된다.
마지막 자리에 있는 숫자가 나눠떨어지면 그 숫자를 리턴해주고 결과는 그 숫자의 길이를 출력해주면 된다.