100C50 = 1.00891344546e+29
2^63 = 9.22337203685e+18
다른 방법을 써 봅시다. BigInteger라던지..
2407번 - 조합
100C50 = 1.00891344546e+29
2^63 = 9.22337203685e+18
다른 방법을 써 봅시다. BigInteger라던지..
직접 구현하시려면
https://silentmatt.com/blog/20...
이거 보심 좋겠네요. 그런데, 저렇게 복잡한 기능까지 구현할 이유는 없어보이고요.
조합식의 특성상, 그냥 더하기만 구현하면 되는 것이잖아요.
보통, 덧셈에서 신경써줘야 할 것은, 올림정도밖에 없어요.
String 객체를 인자로 받아서 구현하시면 편리하겠네요.
java에서는 BigInteger 클래스를 사용해서 구현하실 수 있습니다.
아뇨. 단순하게 생각하면
struct data{
long long sangwi;
long long hawi;
};
이런 식으로 해 놓으시면 되겠습니다. 어짜피 더하기만 하면 되기 때문에
올림만 잘 처리하면 될 거 같고요. 어느 숫자를 단위로 끊을지는 잘 선택하시는 게 좋아보이네요.
2^62이라던지. 2^60이라던지..
덧셈은 그냥 덧셈, 올림, 오버플로 처리만 잘 하면 됩니다.
댓글을 작성하려면 로그인해야 합니다.
hnryu 7년 전
어느부분이 틀린지 모르겠습니다 ㅜㅜ
반례가 어떤것이 있을까요...?