11693번 - n^m의 약수의 합
n이 a^i * b^j .. 이면
답이 (1+a+a^2 .. a^(i*m)) * (1+b+b^2 .. b^(i*m)) .. 여서
((a^(i*m+1)-1)/(a-1)) * ((b^(j*m+1)-1)/(b-1)) .. 를 계산하는데 <- 등비수열합
a^(i*m+1) % 1e9+7 을 먼저 계산하니 답이 안나오네요.
(A%D)/B != A/B % D 여서 그런거 같은데 다른 방법이 있나요?
감사합니다
51번째 줄을 res *= (mypow(a,b*m+1)-1)*mypow(a-1,DIV-2); 이렇게 고쳐봤는데
여전히 예제5처럼 DIV 범위 넘어가는건 안나오는 것 같네요
제가 뭔가 잘못 이해했나요?
댓글을 작성하려면 로그인해야 합니다.
exqt 8년 전
n이 a^i * b^j .. 이면
답이 (1+a+a^2 .. a^(i*m)) * (1+b+b^2 .. b^(i*m)) .. 여서
((a^(i*m+1)-1)/(a-1)) * ((b^(j*m+1)-1)/(b-1)) .. 를 계산하는데 <- 등비수열합
a^(i*m+1) % 1e9+7 을 먼저 계산하니 답이 안나오네요.
(A%D)/B != A/B % D 여서 그런거 같은데 다른 방법이 있나요?