摘要: "嘟嘟嘟" 这题就是一道矩阵加速dp的水题,dp式都给你了,所以矩阵这方面就不说了。 之所以发这篇博客,是因为两数相乘可能会爆long long,所以得用快速乘。 现学了一下,感觉和快速幂特别像。 对于两个数$a, b$,按位枚举$b$,如果$b$的第$i$位为$1$,答案就加上$a 2 ^ i$。 阅读全文
posted @ 2018-12-19 22:27 mrclr 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 这题就是整体二分的板儿,只不过变成二维的。 那么就用二维树状数组好啦。 至于二维树状数组,看了代码就懂了。 #include<cstdio> #include<iostream> #include<cmath> #include<algorithm> #include<cstring> #i 阅读全文
posted @ 2018-12-19 21:57 mrclr 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 做了几道题之后,对整体二分有点感觉了。 整体二分的本质就是二分答案。所以这道题二分的就是次数。 然后就是套路了,把小于$mid$的操作都添加减去,然后查询,如果查询的值$x$比给定值大,就把这个询问放到左区间,否则减去$x$,放到右区间。 具体的操作,要支持区间加和单点查,第一反应是线段树, 阅读全文
posted @ 2018-12-19 18:44 mrclr 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 这应该算是整体二分入门题吧。 唯一的区别就是这次是区间修改,树状数组可能不太好做,换成线段树就好了。 然后每一次别忘了清空。 #include<cstdio> #include<iostream> #include<cmath> #include<algorithm> #include<cs 阅读全文
posted @ 2018-12-19 16:18 mrclr 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 整体二分是一个好东西。 理解起来还行。 首先,需要牢记的是,我们二分的是答案,也就是在值域上二分,同时把操作分到左右区间中(所以操作不是均分的)。 然后我就懒得讲了…… 李煜东的《算法竞赛进阶指南》第二版中讲的特别好,有兴趣的OIer可以拿来读读。 这里贴一个板儿。 突然想说一嘴:这道题我们 阅读全文
posted @ 2018-12-19 14:36 mrclr 阅读(140) 评论(0) 推荐(0) 编辑