백준/Java

[백준][Java] 1271 - 엄청난 부자2

Namani 2023. 6. 29. 02:52

https://www.acmicpc.net/problem/1271


import java.math.BigInteger;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in); // 사용자의 입력을 받기 위한 스캐너 생성

	/*
	문제를 잘 읽어보면 10^1000 이라는 제한이 있음, int와 long으로는 불가함
	따라서 무한의 정수가 들어갈 수 있는 가능성이 있다면 BigInteger이라는 클래스를 사용해야 함
	BigInteger는 문자열 형태로 이루어져 있어 숫자의 범위가 무한하기에 어떠한 숫자이든지 담을 수 있음
	*/
        
        BigInteger assistantMoney = sc.nextBigInteger(); // 사용자의 입력을 BigInteger로 받음
        BigInteger getPaid = sc.nextBigInteger();

	// 조교의 돈에서 나누기 메소드인 divide()를 이용하여 돈 받으러 온 사람들 수만큼 나눔
        System.out.println(assistantMoney.divide(getPaid)); 
        
        // 남는 돈 계산하기 위해 나머지값 구하는 메소드 remainder() 사용
        System.out.print(assistantMoney.remainder(getPaid)); 
    }
}

참고

1. https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=cyydo96&logNo=221239174508 - 입력 받기

2. https://coding-factory.tistory.com/604 - BigInteger 사용법

3. https://kkh0977.tistory.com/161 - BigInteger 나누기, 나머지 구하기