关闭
当前搜索:

[DP 倍增] BZOJ 4870 [Shoi2017]组合数问题

就是求 nknk 个物品里面取 模kk余rr 个物品的方案数 这个直接dp fi,jf_{i,j}表示前 ii 个 余 jj 个的方案数 矩阵快速幂是O(k3logn)O(k^3\log n) 实际上这个转移满足结合律 直接在快速幂的时候转移就好了 另一种理解是 这个矩阵是循环矩阵 矩阵的记录和乘法都只要处理第一行就好了 复杂度是O(k2logn)O(k^2\log n) 代码比想象中...
阅读(322) 评论(0)

[三进制倍增 || 可并堆] BZOJ 4003 [JLOI2015]城池攻占

蒟蒻想起来自己还不会可并堆诶 出题人卡倍增,那么淡定的写了个三进制倍增 #include #include #include #include #include #include #include #define V G[p].v using namespace std; inline char nc() { static char buf[100000],*p1=buf,...
阅读(357) 评论(0)

[树上倍增] BZOJ 4281 [ONTAK2015]Związek Harcerstwa Bajtockiego

树上倍增裸题 %%%用树链剖分拿rank3的Evan大爷 #include #include #include #include #include #define V G[p].v using namespace std; inline char nc() { static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p...
阅读(286) 评论(0)

[倍增 堆] BZOJ 4458 GTY的OJ

题解:JudgeOnline/upload/201604/Solution-4458.rar By jinlifu1999 超级钢琴...都已经成经典了 本来想打树链剖分和ST表的,后来看题解发现倍增更好打,膜打树链的Evan 题目后跟个题解链接是SMG #include #include #include #include using namespace std;...
阅读(340) 评论(0)

[倍增 floyd] BZOJ 2165 大楼

倍增喽 try-catch 语句 真是涨姿势 还可以这么用 #include #include #include #include using namespace std; typedef long long ll; inline char nc() { static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+...
阅读(403) 评论(0)
    个人资料
    • 访问:307110次
    • 积分:12382
    • 等级:
    • 排名:第1310名
    • 原创:969篇
    • 转载:3篇
    • 译文:0篇
    • 评论:54条
    最新评论