[백준] 1312번 소수

거북이·2023년 1월 7일
0

백준[실버5]

목록 보기
71/114
post-thumbnail

💡문제접근1

나눗셈을 수행하고 그 값을 문자로 처리하여 소수점 아래 구하고자하는 위치에 있는 값을 출력하도록 했지만 런타임에러(IndexError)가 출력되었다.

💡코드1

A, B, N = map(int, input().split())

result = A / B
temp = str(result)
for i in range(len(temp)):
    if temp[i] == ".":
        part_result = temp[i+1:]
        break

print(part_result[N-1])

💡문제접근2

질문게시판에 있는 내용 위주로 먼저 찾아봤더니 이 문제는 나눗셈의 수학적 과정에 대한 이해를 토대로 접근해야한다는 글이 많았다. 그래서 수학적으로 접근했다.

💡코드2(메모리 : 30616KB, 시간 : 156ms)

A, B, N = map(int, input().split())

A %= B
for i in range(N-1):
    A = (A * 10) % B
print((A * 10) // B)

💡소요시간 : 9m

0개의 댓글