알고리즘(백준 등) 공부/백준(자바)
백준 1312번: 소수
posite
2026. 3. 13. 10:13
https://www.acmicpc.net/problem/1312
A를 B로 나누었을 때, 소수점 아래 N번째 수를 출력하는 문제이다.
소수점 아래의 수를 구하기 위해 나머지에 10을 곱해 준 후 다시 B로 나누어야한다. 해당 자리 숫자는 나눈 몫이 된다.
코드는 아래와 같다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class 소수1312 {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
long a = Long.parseLong(st.nextToken()), b = Long.parseLong(st.nextToken());
long n = Long.parseLong(st.nextToken());
br.close();
long remainder = a % b;
long digit = 0;
for (long i = 0; i < n; i++) {
remainder *= 10;
digit = remainder / b;
remainder %= b;
}
System.out.print(digit);
}
}