반응형
처음에 작성한 코드는 다음과 같다. 그런데 런타임 에러가 나서 질문 게시판의 힌트를 보니, 10의 1000승은 int에 담을 수 없을 정도로 큰 수입니다. 라고 한다. 대충 int 보다 훨씬 큰 수를 담을 수 있어야 한다는 뜻으로 이해했다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int n,m;
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
m = sc.nextInt();
System.out.println(n/m);
System.out.println(n%m);
}
}
하지만, long을 썼지만 long 도 런타임 에러가 발생했다. 그러면, long보다 더 큰 수를 담을수 있는 건 뭘까? 찾아보니
BigInteger이라고 한다. 근데 BigInteger로 쓰니 n/m, n%m 을 못쓴다.아래 블로그를 참고하면 사용할 수 있는 코드가 뭔지 잘 정리되어있다.
https://kkh0977.tistory.com/161
맞았다고 뜬 코드 !
package julyW5;
import java.math.BigInteger;
import java.util.Scanner;
public class B1271 {
public static void main(String[] args) {
// TODO Auto-generated method stub
BigInteger n,m;
Scanner sc = new Scanner(System.in);
//n: 가진 돈 m: 생명체 수
n = sc.nextBigInteger();
m = sc.nextBigInteger();
System.out.println(n/m);
System.out.println(n%m);
}
}
반응형