본문 바로가기
Algorithm

[구현/수학] 백준 1312 소수 - 파이썬(Python)

by jangThang 2022. 10. 27.
반응형

백준 온라인 저지

 

[ Contents ]

     

     

    1. 문제 (링크 참조)

     

    1312번: 소수

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

    www.acmicpc.net

     

     

     

    2. 문제 풀이

     A/B로 나눈 결과에서 N번째 소수점을 구하는 문제입니다.

     

     

    3. 코드

    import sys
    input = sys.stdin.readline
    
    # 입력
    A, B, N = map(int, input().split())
    
    # 출력
    print(int((A/B)*10**N)%10)

     단순하게 계산하면 런타임 에러가 뜹니다. 아무래도 floating point error가 나는 듯합니다.

     

     

    import sys
    input = sys.stdin.readline
    
    # 입력
    A, B, N = map(int, input().split())
    
    # 출력
    A %= B
    for i in range(N-1):
        A = (A*10) % B
    
    print((A * 10)//B)

     조금 복잡하더라도, 반복문으로 일일이 나눠줘야 합니다.

     

    star가 되고나서 Tistory

    반응형

    댓글