摘要: 1、并查集 可以并查集:考虑对点权的限制。尝试逐点枚举点权,向点权大于等于自己的节点扩展,计算最大路径。优化:瓶颈在于还是有很多重复的。上述的每个节点扩展后形成的连通块点集成为一个集合,从大点权到小点权只要集合拓展。维护集合:考虑并查集点权排序,维护集合内最长链即可。 nlog #include<b 阅读全文
posted @ 2019-09-10 10:50 seamtn 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 不可做 阅读全文
posted @ 2019-09-08 17:38 seamtn 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 1、 鸽了。 阅读全文
posted @ 2019-09-08 17:38 seamtn 阅读(83) 评论(0) 推荐(0) 编辑
摘要: #include<bits/stdc++.h> #define F(i,a,b) for(rg int i=a;i<=b;++i) #define LL long long #define il inline #define rg register #define pf(a) printf("%d 阅读全文
posted @ 2019-09-08 17:34 seamtn 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 最短路问题动态维护加减边:最小生成树+lct。方便维护:倒序处理使减少变为增加。 普通最短路也可以用最小生成树做。。。。。。 只不过kruskaer是mlog的,比nlog大,还要建树等等。 就算prime优化到nlog,也要建树,再跑lca什么的。复杂度大。 之所以这道题用lct,是因为要动态维护 阅读全文
posted @ 2019-09-07 21:41 seamtn 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 对于任意两个事件 X, Y :E(X + Y ) = E(X) + E(Y ) 。对于两个相互独立事件 X, Y :E(XY ) = E(X)E(Y )因此,对于两个相互独立事件 X, Y ,有:E((X + Y ) j ) = ∑ j k=0 C jk E(X k ) E(Y j−k ) 但是对于 阅读全文
posted @ 2019-09-05 12:19 seamtn 阅读(365) 评论(0) 推荐(0) 编辑
摘要: 状态设计:成环使首尾相连为何连成环?单纯链式地跑,状态是无限的。但是因为状态是首位相接的,所以可以连成环,在环上可以无限地跑最终状态是f(0,m),而不是f(0,0).(0,m)没开始,(0,0)已开始。处理环:1、高斯消元。但是是取模意义下的,而且复杂度太大会T 2、系数递推。相当于手动高斯了。因 阅读全文
posted @ 2019-09-05 11:39 seamtn 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 期望可加性:对于难以整体求解的拆分。 期望的代价、次数可以抽象为实际平均。 代价有可加性,因为E(a->c)=E(a->b)+E(b->c); 高斯消元是消除环的影响和期望经过次数的相互联系。 但是复杂度过高。n^3 所以在有可加性时要先想拆分,移项化柿子。 移项化柿子一般出现在具有拓扑结构。 定义 阅读全文
posted @ 2019-08-23 17:50 seamtn 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 状态不佳。精神不好。早上确实应该跑来。 遇到难题做不动就没有积极性。 应该用平静而认真的心态去做。 搜索要打好。题意,各种情况要想好。 对于T3,尝试去想的代价并不高。因为你不知道暴力有多少分。 开题以后,先整体看一眼,看每道题是什么类型,评估难度。去看一眼每道题暴力怎么打,分数有多少。 这个过程大 阅读全文
posted @ 2019-08-23 11:38 seamtn 阅读(118) 评论(0) 推荐(1) 编辑
摘要: T1:虎 观察性质,贪心。 首先看到求最小次数,但是没有权值,想到可能不是DP,可能是个贪心。 看数据范围,1e6,O(n)或log,但这题没什么可用的数据结构。(现在想想log可能来自二分,但去想二分的check发现依然可以贪心。) 类似杂题1里的szn。找规律发现,取反操作,重合部分是没用的。2 阅读全文
posted @ 2019-08-21 21:40 seamtn 阅读(212) 评论(0) 推荐(0) 编辑