摘要: vector.clear()不会释放内存,只是把size置零 和你链式存图 head=0 一样的,然后后面覆盖上 阅读全文
posted @ 2020-09-19 11:55 摸鱼选手LLF 阅读(134) 评论(0) 推荐(0)
摘要: 题解: 显然 我们在越高的地方增加越好,然后注意这个最大值不能经过这里, 一次dfs找最大值, 一次dfs处理每个点的min 然后最后一次dfs计算答案 依次往下找就行了 #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<=n;++i) 阅读全文
posted @ 2020-09-15 12:00 摸鱼选手LLF 阅读(146) 评论(0) 推荐(0)
摘要: 我们发现维护左边的0和右边的1就行了 线段树区间维护一下 #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<=n;++i) #define per(i,a,n) for(int i=n;i>=a;--i) #define pb push 阅读全文
posted @ 2020-09-15 10:51 摸鱼选手LLF 阅读(162) 评论(0) 推荐(0)
摘要: 题解 我们发现这个是带修改的,显然点分治做不了, 然后这个是个动态点分治,俗称点分树,暂时没看懂,以后补 ,(大概是,只维护分治时的fa一路更新上去。) 然后有一个比较稳定的括号序列做法(比点分树快。) 括号序列可以快速求一个树上两点之间距离 以下资料转自洛谷大佬博客 :https://www.lu 阅读全文
posted @ 2020-09-15 10:43 摸鱼选手LLF 阅读(160) 评论(0) 推荐(0)
摘要: 题意 给一棵树,1是根; 然后树上有M个资源站,现在要求你断开一些边,让根连不到所有的资源站, 考虑显然o(n)的树DP 但是有M次询问 复杂度nm 然后我们发现ki的加和比较小 然后建立虚树,每次只处理ki个点就行了 然后虚树怎么建立,我们发现只需要包含这ki个点,和他们的lca就可以了; 以下内 阅读全文
posted @ 2020-09-15 10:23 摸鱼选手LLF 阅读(222) 评论(0) 推荐(0)
摘要: 链接 :。。 zbr说这是签到,看了半天没看出来, 题解: 我们要这么考虑。。 单独把M个数和X搞出来 一共(m+1)!种排列 然后x在最后的有m!种 然后我们发现x在最后的排列数量为m!/(m+1)! 也就是占比 1/(m+1) 所以在N!中,也是占比这么多 所以最终答案就是n!/(m+1) 强啊 阅读全文
posted @ 2020-09-12 23:38 摸鱼选手LLF 阅读(130) 评论(0) 推荐(0)
摘要: 优先队列默认由大到小,由小到大可以为 priority_queue<int,vector<int>,greater<int> > q; typedef struct node { int pi; int di; bool operator < (const node &b)const { if(pi 阅读全文
posted @ 2020-09-12 20:29 摸鱼选手LLF 阅读(172) 评论(0) 推荐(0)
摘要: 训练了一波读脑残题 训练了一波后台数据出错还没得骂的心态,or蜜汁 题意? 复习了一波STL用法,练了一波手速, 题解:码农大模拟,end。。 #include<bits/stdc++.h> #define fi first #define se second #define io std::ios 阅读全文
posted @ 2020-09-11 21:01 摸鱼选手LLF 阅读(187) 评论(0) 推荐(0)
摘要: 树剖 LCA DFS序板子题 #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<=n;++i) #define per(i,a,n) for(int i=n;i>=a;--i) #define pb push_back #define 阅读全文
posted @ 2020-09-11 11:56 摸鱼选手LLF 阅读(176) 评论(0) 推荐(0)
摘要: 水题 建两个自动机跑转移就行了 #include<bits/stdc++.h> #define rep(i,a,n) for(int i=a;i<=n;++i) #define per(i,a,n) for(int i=n;i>=a;--i) #define pb push_back #define 阅读全文
posted @ 2020-09-11 11:42 摸鱼选手LLF 阅读(166) 评论(0) 推荐(0)