CodingTest/Baekjoon

[baekjoon] 백준 1312번(파이썬): 소수

JunJangE 2022. 3. 10. 01:27

문제

 

1312번: 소수

피제수(분자) A와 제수(분모) B가 있다. 두 수를 나누었을 때, 소숫점 아래 N번째 자리수를 구하려고 한다. 예를 들어, A=3, B=4, N=1이라면, A÷B=0.75 이므로 출력 값은 7이 된다.

www.acmicpc.net

알고리즘

- 처음에 a를 b로 나눠 나머지를 a에 담는다. (1의 자릿수)

- n - 1을 반복하여 나눗셈을 구현한다. (소수 n-1번째 자리까지 나눔)

- 마지막 나눗셈의 몫을 출력한다. (n번째 자리 수를 나눈 몫을 출력)

코드

import sys

a, b, n = map(int, sys.stdin.readline().split())

a %= b # 처음에 a를 b로 나눠준다. (1의 자리수)
# n - 1 반복을 통해 나눗셈을 구현
for _ in range(n - 1):
    a = (a * 10) % b

res = (a * 10) // b # 마지막 나눗셈의 몫을 출력(n의 자리수)
print(res)

github

 

GitHub - junjange/CodingTest: 내가 푼 코딩 테스트 문제와 해결법

내가 푼 코딩 테스트 문제와 해결법. Contribute to junjange/CodingTest development by creating an account on GitHub.

github.com