摘要: 题意 "题目链接" Sol 首先一个结论:floyd算法的正确性与最外层$k$的顺序无关(只要保证是排列即可) 我大概想到一种证明方式就是把最短路树上的链拿出来,不论怎样枚举都会合并其中的两段,所以正确性是对的 这道题的话显然一个$n^4$的暴力是枚举哪个点不选,再跑floyd。 这个暴力等价于求出 阅读全文
posted @ 2019-01-16 15:36 自为风月马前卒 阅读(630) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 显然如果题目什么都不说的话需要$\frac{n (n 1)}{2}$个相对关系 然后求一下传递闭包减掉就行了 cpp include using namespace std; const int MAXN = 1001; inline int read() { char 阅读全文
posted @ 2019-01-16 11:07 自为风月马前卒 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 和cf上的一道题几乎一摸一样 首先根据期望的线性性,可以转化为求每个点的期望打开次数,又因为每个点最多会被打开一次,只要算每个点被打开的概率就行了 设$anc[i]$表示$i$的反图中能到达的点集大小,答案等于$\sum_{i = 1}^n \frac{1}{anc[i] 阅读全文
posted @ 2019-01-16 10:32 自为风月马前卒 阅读(348) 评论(0) 推荐(1) 编辑
摘要: 题意 "题目链接" Sol 数据水的一批,$O(n^3)$暴力可过 实际上只要bitset优化一下floyd复杂度就是对的了($O(\frac{n^3}{32})$) 还可以缩点之后bitset维护一下连通性,然后对每个联通块之间的分别算,复杂度是$O(\frac{nm}{32})$(好像和上面的没 阅读全文
posted @ 2019-01-16 09:18 自为风月马前卒 阅读(320) 评论(0) 推荐(0) 编辑

Contact with me