알고리즘 연습/브루트 포스

[🥈3 / 백준 4375 / 파이썬] 1

김세진 2022. 10. 13. 21:45
반응형

 

 

4375번: 1

2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오.

www.acmicpc.net

 

문제

2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, n이 주어진다.

출력

1로 이루어진 n의 배수 중 가장 작은 수의 자리수를 출력한다.

 

예제 입력

3
7
9901

예제 출력

3
6
12

 

풀이

 

1, 11, 111과 같이 1을 무한으로 늘려 나가며 n으로 나누어봤을 때, 나누어 떨어질 경우의 자리수를 출력하면 된다.

 

입력의 마지막이 주어지지 않으므로 EOF 를 주의하도록 한다.

 

나누어 떨어지지 않는 경우가 있을 것 같았는데, 그렇지 않은가 보다.

2와 5로 나누어 떨어지지 않는 정수라는 조건이 붙어서 그런 것 같다.

 

import sys
input = sys.stdin.read

for n in map(int,input().split()):
    m = 1
    while True:
        if m%n == 0:
            print(len(str(m)))
            break
        
        m*=10
        m+=1
반응형