728x90
문제 링크: https://www.acmicpc.net/problem/1312
1312번: 소수
피제수(분자) A와 제수(분모) B가 있다. 두 수를 나누었을 때, 소숫점 아래 N번째 자리수를 구하려고 한다. 예를 들어, A=3, B=4, N=1이라면, A÷B=0.75 이므로 출력 값은 7이 된다.
www.acmicpc.net
문제 풀이
간단하게 0을 추가하고 b로 나누어서 나머지를 구한 후 두 가지로 나뉘어서 생각할 수 있다.
1. 나머지가 0인 경우
나머지가 0이라면 n번째 자리까지 안구했더라도 전부 0이 되기 때문에 반복문을 나가고 0으로 출력한다.
2. 나머지가 0이 아닌 경우
만약 n번째 자리까지 왔다면 몫을 출력, 아니면 나머지에서 또다시 0을 붙여서 반복문을 돌려준다.
코드
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
a, b, n = map(int, input().split()) | |
cnt, ans, res = 0, 0, str(a%b) | |
while (res != 0): | |
res += '0' | |
cnt += 1 | |
x = int(res) % b | |
if x == 0: | |
if cnt < n: | |
ans = 0 | |
break | |
if cnt == n: | |
ans = int(res)//b | |
break | |
res = str(x) | |
print(ans) |
728x90
'BOJ' 카테고리의 다른 글
[BOJ][Python] 백준 9501번 - 꿍의 우주여행 (0) | 2022.04.24 |
---|---|
[BOJ][Python][C++] 백준 24417번 - 알고리즘 수업 - 피보나치 수 2 (0) | 2022.04.05 |
[BOJ][Python][C++] 백준 16208번 - 귀찮음 (0) | 2022.04.05 |
[BOJ][Text] 백준 24905번 - 24905번 문제 (0) | 2022.04.03 |
[BOJ][Text] 백준 24904번 - Baekjoon Wordline Judge (0) | 2022.04.03 |