摘要: [HEOI2014]南园满地堆轻絮 "BZOJ" "luogu" 二分答案贪心check 首先b[1]最小一定优 之后就贪心的最小化b[i]就行 cpp include using namespace std; const int _=5e6+5; int n,sa,sb,sc,sd,p,ans,a 阅读全文
posted @ 2018-11-28 16:24 sdzwyq 阅读(144) 评论(0) 推荐(0) 编辑
摘要: [NOIP2018PJ]对称二叉树 这个题正常人看到题面难道不是哈希? 乱写了个树哈希... cpp include using namespace std; const int _=1e6+5,p=998244353; int re(){ int x=0,w=1;char ch=getchar() 阅读全文
posted @ 2018-11-28 14:24 sdzwyq 阅读(146) 评论(0) 推荐(0) 编辑
摘要: [NOIP2018PJ]摆渡车 "luogu" mdPJ组这么难,还好考的TG组 先按t排序 设f[i][j]表示前i个人,第i个人等j分钟的最小总等待时间 这里j是小于2m的 可以考虑最坏情况下,一个人到起点时车刚好出发,m分钟之后回来 然后车又在起点停了m分钟等别人,则这个人一共等了2m分钟 转 阅读全文
posted @ 2018-11-28 11:35 sdzwyq 阅读(290) 评论(0) 推荐(0) 编辑
摘要: [NOIP2018TG]赛道修建 考场上multiset调不出啊啊啊!!! 首先肯定是二分答案 做树形dp,f[i]表示i点的子树两两匹配后剩下的最长长度 匹配可以用multiset维护 但是菊花图跑得很慢 考虑求出树的直径作为二分上界 阅读全文
posted @ 2018-11-28 11:29 sdzwyq 阅读(248) 评论(0) 推荐(0) 编辑
摘要: [NOIP2018TG]旅行 树很简单,对每个点sort儿子,贪心走就行了 基环树呢? 如果是1e5可能不太好做 但是5000的话枚举断边就可以$n^2$了 cpp include using namespace std; const int _=5005; int re(){ int x=0,w= 阅读全文
posted @ 2018-11-28 11:25 sdzwyq 阅读(138) 评论(0) 推荐(0) 编辑
摘要: [BZOJ3551]Peaks "BZOJ" "luogu" 建Kruskal重构树,点权为边权 按dfn序建出主席树 倍增找到能跳到的最浅的祖先 主席树查询一下 cpp include using namespace std; const int N=1e5+5,M=5e5+5; int re() 阅读全文
posted @ 2018-11-28 10:22 sdzwyq 阅读(127) 评论(0) 推荐(0) 编辑