上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 36 下一页
摘要: 除法分块。 猜想: 记 $g(x)=\lfloor k / \lfloor k / x\rfloor \rfloor$,则对于 $i \in [x,g(x)]$,$\lfloor k / i \rfloor$ 都相等。 证明: 显然函数 $y=k/x$ 单调递减。显然 $\lfloor k/x \r 阅读全文
posted @ 2018-03-04 19:32 poorpool 阅读(115) 评论(0) 推荐(0)
摘要: 以下证明来自算法竞赛进阶指南 引理一: 答案就是 $[1,n]$ 之间约数个数最多的最小的数。 证明: 记 $m$ 是 $[1,n]$ 之间约数个数最多的最小的数。则 1. $\forall i \in [1,m 1],g(i)2 \times 10^9$。 引理三: 答案必能表示成 $2^{c_1 阅读全文
posted @ 2018-03-04 18:31 poorpool 阅读(123) 评论(0) 推荐(0)
摘要: 合数总可以由于素数产生。int 范围内的数,它们都有一个 $\sqrt{int\_max}$ 内的质因子。 因此,筛出 $[1, \sqrt{int\_max}]$ 内的质数,再根据这些质数筛掉 $[l,r]$ 之间的合数就可以了。 阅读全文
posted @ 2018-03-04 16:17 poorpool 阅读(93) 评论(0) 推荐(0)
摘要: 看 "这里" 阅读全文
posted @ 2018-03-04 09:33 poorpool 阅读(103) 评论(0) 推荐(0)
摘要: 看到一坨矩形就要想到扫描线。(poj atantis) 我们把横边竖边分开计算,因为横边竖边其实没有区别,以下论述全为考虑竖边的。 怎样统计一个竖边对答案的贡献呢?答:把这个竖边加入线段树,当前的总覆盖长度 减去 加入前的总覆盖长度 的绝对值 即为这个竖边的贡献。 这样做有一个要求,横坐标相同的竖边 阅读全文
posted @ 2018-03-03 22:00 poorpool 阅读(181) 评论(0) 推荐(0)
摘要: 跟线段树求区间最值一样每个节点维护左边开始的最大连续空房间数、右边开始的最大连续空房间数、这个区间内的最大连续空房间数 cpp include include using namespace std; int n, m, opt, uu, vv; struct SGT{ int lma[200005 阅读全文
posted @ 2018-03-03 20:24 poorpool 阅读(177) 评论(0) 推荐(0)
摘要: 倒序 处理,线段树保存有多少空位 cpp include include using namespace std; int n, ans[200005], uu[200005], vv[200005]; struct SGT{ int sum[800005]; void build(int o, i 阅读全文
posted @ 2018-03-03 16:57 poorpool 阅读(105) 评论(0) 推荐(0)
摘要: 边带权比较好做,然后dp方案 cpp include include include include include using namespace std; int n, pu, pv, uu, vv, fa[605], gx[605], cnt, bel1[605], bel2[605], dp 阅读全文
posted @ 2018-03-02 17:47 poorpool 阅读(135) 评论(0) 推荐(0)
摘要: "参考" 阅读全文
posted @ 2018-03-01 17:22 poorpool 阅读(161) 评论(0) 推荐(0)
摘要: 1日 luogu 1494 poj 2912 2日 poj 1417 3日 poj 2828 luogu 2894 luogu 1856 4日 luogu 4135 luogu 4149 poj 2689 poj 3090 5日 poj 3696 poj 1845 poj 2891 poj 1006 阅读全文
posted @ 2018-03-01 17:21 poorpool 阅读(210) 评论(0) 推荐(0)
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 36 下一页