Coding Test/Baekjoon

[백준/파이썬] 4375번: 1 풀이

도돔 2023. 8. 17. 13:47

🔗 문제 링크

https://www.acmicpc.net/problem/4375

 

4375번: 1

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

www.acmicpc.net

  해당 문제에 대해 다양한 풀이 방법이 있던데, 그중에서 내 풀이를 간단하게 공유해보려고 한다!

 


🔎 문제 풀이 & 작성 코드

  처음 문제를 보았을 때 잘 이해가 되지 않았지만, 다시 읽어보니 어렵지 않은 문제였다. 모든 자릿수가 1로 이루어진 숫자 중에, n의 배수인 가장 작은 수의 자릿수를 출력하는 문제이다. 한 가지 특징이 있다면, 입력의 개수가 몇 개인지 주어지지 않았다는 점이 있는 것 같다. 이는 try&except의 예외 처리를 통해 수행할 수 있다. try&except를 통한 예외처리는 별도의 포스팅으로도 정리해 두었다!

 

[파이썬] 예외처리 try, except

* 스스로 공부한 내용을 바탕으로 작성한 글입니다. 부정확한 부분이나 오류가 있을 수 있으며, 발견 시 댓글로 알려주세요! 파이썬 코드를 작성하다 보면 에러를 쉽게 마주칠 수 있다. 하지만,

dev-dodom.tistory.com

 

  코드를 작성할 때, 각자릿수가 모두 1로만 이루어진 수중 가장 작은 수를 찾아내야 했기에, 나는 while문을 사용하여 조건을 만족하지 않으면 자릿수를 하나씩 늘려가는 방법을 사용했다. 구해야 할 수를 담은 변수 one은 str, 즉 문자열로 정의해서 사용하였는데, 왜냐하면 작은 수의 자릿수를 출력해야 했기에 int형 변수를 사용하는 것보다, 처음부터 str으로 정의하고 정답 숫자의 자릿수를 len 함수를 이용하여 바로 출력해 주었다. 문제의 규칙만 파악하면 어렵지 않게 풀 수 있는 문제였다.

while True:
    try:
        n = int(input())
    except:
        break

    one = '1'
    while int(one) % n != 0:
        one+='1'
    print(len(one))

 

 


🌍 깃허브 링크

실제 작성한 해당 정답 코드는 깃허브에도 업로드해두었습니다.

 

dohyun-99 - Overview

dohyun-99 has 4 repositories available. Follow their code on GitHub.

github.com

 

 

 

 

 

728x90
반응형