环套树
里阿奴摩西
这个作者很懒,什么都没留下…
展开
-
[环套树 单调队列DP] BZOJ 1791 [Ioi2008]Island 岛屿
先找环 用环上每个点的子树的直径更新答案然后跨环 把环展开倍增 做一遍单调队列DP max{f[i]+sum[i]+f[j]-sum[j]}似乎可以直接套仙人掌模板啊注意 long long 会爆栈 懒得手写栈 先让它RE好了#include#include#includeusing namespace std;typedef long long ll;in原创 2016-07-02 00:04:49 · 926 阅读 · 0 评论 -
[置换 组合数学 基环内向树] AGC 008 E - Next or Nextnext
传送门这个 我也不知道怎么说啊 把 ii 向 a[i]a[i] 连边 因为点数等于边数 每个点入度至多为2 那么基环内向树和环组成的森林 由置换那一套理论可知 置换的开方 一些长度相同的环 可以合并 然后 枚举一下每种长度几对环合并 组合计数一下 剩下的不合并的环 如果是大于1的奇环 也是可以选择开方或不开方的 至于每棵基环内向树 可以看出不可以和其他树或环合并 且支链一定是一条直链 然原创 2017-02-19 14:32:15 · 1508 阅读 · 1 评论 -
[数学 树 || 环套树] BZOJ 3528 [Zjoi2014]星系调查
瞎扯的题目 直接上大神题解吧 #include<cstdio>#include<cstdlib>#include<algorithm>#include<cmath>using namespace std;typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (原创 2017-02-01 13:33:27 · 594 阅读 · 0 评论 -
[环套树 bfs序] ICPC 2016 Shenyang J & HDU5957 Query on a graph
按层建线段树,或者说是bfs序。 然后修改的一定是不超过5层里面的连续的段,可以在线段树上直接修改。 对于环+树,把环抠出来之后按树的方法做。代码丑#include<cstdio>#include<cstdlib>#include<algorithm>using namespace std;typedef long long ll;inline char nc(){ static c原创 2017-03-29 07:44:35 · 690 阅读 · 0 评论 -
[环套树 树形DP 期望] BZOJ 2878 [Noi2012]迷失游乐园
瞎DP一下就好了 不过是搞得我蛮昏的 我懒 找一篇题解就当做我写过题解了#include<cstdio>#include<cstdlib>#include<algorithm>using namespace std;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; return p1==p2&&(p2=(p1=buf原创 2017-04-22 21:00:11 · 596 阅读 · 0 评论