dong149   8달 전

예제 세개중에 13 29가 0으로 계산되네요.... 정수값이 너무커서  그런 것 같은데 해결방법좀 부탁드립니다. ㅠㅠ

20151571   8달 전

29!는 정수형 뿐만 아니라 long long 에서도 오버 플로우가 나는 엄청나게 큰 숫자라서

29!를 구해주기 보다는

반복문으로 m부터 n 까지 곱해주면서 동시에 1부터 n 까지(맞나??) 나눠 주는 방식으로 하시면 됩니다!!

nCr = n-1Cr-1  +  n-1Cr

위 공식을 이용해 계산하면 오버플로 없이 int 범위 내에서 29C13의 값을 계산할 수 있습니다.

dong149   8달 전

감사합니다!!!

댓글을 작성하려면 로그인해야 합니다.