摘要: 思路:单调栈 提交: 5次 错因:单调栈写法有问题+前缀和写错 题解: 若有$ =k\ \&\&\ =2k$。 这样,我们可以尝试去切掉他的行来不断减少他的权值和。 如果发现某一行 $ =2k$ ,我们应该去且他而不是切剩下的矩形(剩下的可能过小)。 当然如果你切着切着发现出现了一个矩形他的权值和$ 阅读全文
posted @ 2019-09-03 20:27 LuitaryiJack 阅读(212) 评论(1) 推荐(0) 编辑
摘要: 思路:树哈希 提交:1次 题解: 怕不是用的 "oi wiki" 上的公式: $$f_u=size_u\times\sum f_{son_{u,i}}\times Base^{i 1}$$ cpp include define R register int using namespace std; 阅读全文
posted @ 2019-09-03 20:09 LuitaryiJack 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 思路:可持久化线段树+巧妙地树上差分 提交:1次 题解: 我们从根开始,类似主席树板子,一个一个加点,使得从根到叶子节点时一个类似前缀和的主席树,即 $u$ 点维护的是 $1$ 到 $u$ 的路径。 这样我们就可以在 $u+v lca(u,v) fa(lca(u,v))$ 这样一颗线段树上二分了。 阅读全文
posted @ 2019-09-03 19:53 LuitaryiJack 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 思路:可持久化线段树+标记永久化 提交:3次 错因:标记维护出锅+没开long long 题解: 与正常的可持久化线段树的区别在于,本题是区间修改。 我们应用标记永久化的思想,在$[l,r]$中访问到的第一级线段打上标记; 如图: 然后更新sum数组时加上子节点的标记(完全覆盖子树信息)。 quer 阅读全文
posted @ 2019-09-03 19:37 LuitaryiJack 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 昨天晚上快走时看了这题:不是exgcd+excrt吗? 旁边张大佬默默看了我一眼(觉得我会死) 然后于是我今天中午才调出来Orz 思路:exgcd+excrt 提交:5次 错因:龟速乘传进去了负数,并且用的int;之前写过的excrt的板子有问题 题解: 先要特判一种情况:若 $p[i]=1$ ,答 阅读全文
posted @ 2019-09-03 13:17 LuitaryiJack 阅读(189) 评论(0) 推荐(0) 编辑