首页 > 移动平台 > 详细

Problem B. Harvest of Apples

时间:2018-08-02 13:38:08      阅读:175      评论:0      收藏:0      [点我收藏+]

技术分享图片

PS:没看出这个可以离线。。。官方题解

技术分享图片

标程貌似不是常规莫队的写法,同一个块内,没有对 r 排序,优先处理每个块的答案。学习到了阶乘逆元的递推公式。

inv[mx] = powi(fac[mx], mod - 2);
for(int i = mx - 1; ~i; i--) inv[i] = 1ll * inv[i + 1] * (i + 1) % mod;

避免加法溢出

while(in < lst[i][j].n) val = (0ll + val + val + mod - C(in++, ik)) % mod;

避免乘法溢出

for(; b; b >>= 1, a = 1ll * a * a % mod) if(b & 1) c = 1ll * c * a % mod;

避免减法取模溢出

while(ik > lst[i][j].k) val = (val + mod - C(in, ik--)) % mod;

 

Problem B. Harvest of Apples

原文:https://www.cnblogs.com/zgglj-com/p/9406625.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!