2017-Sp310-team2
从 Trac 迁移的文章
这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。
原文章内容如下:
== 流水账 ==
=== chenjb ===
md这个流量平衡绝对是我的锅
=== oipotato ===
=== subconscious ===
== 题解 ==
* A:整个行为可以视为一个序列,到最后一个1结束,可以直接算出对于一个集合,这个集合都被抽完的概率,前缀减即可。
* B:模拟。
* C:对于每个数统计互质的数*(n-1-互质的数),答案是所有人-和/2。
* D:一定保留连续的一段,答案是方差,直接统计。
* E:直接dp。
* F:
* G:考虑每个人要么小于阈值,要么高于阈值,且肯定在其中选择w最大的,然后海明距离为1的点连边可以按1的个数奇偶分成二分图,对于奇,S向i连w[L[i]]流量的边,i向T连w[R[i]]流量的边,偶反过来。然后对于额外收益直接奇向偶连,跑网络流求最小割即可。注意:由于w有负数,可以统一抬高到正数,但是额外收益不能一起抬,因为会导致流量不平衡。
* H:打表,不要产生重复数字,半分钟内打完,104的答案是10比较慢。
* I:按题意模拟,注意不要溢出。
* J:
* K:暴力枚举匹配情况,polya。
* L:就是在AC自动机的fail树上进行,将给定点集的子树并+1,询问给定点集到根的链并之和。对于操作,子树的并按dfs序排序之后,如果当前修改的点在上一个修改的点的子树里,就直接删除;对于询问,按dfs排序后,每个人到根的答案-相邻lca到根的答案。对于到根的路径上每个标记,贡献是两个点的深度差,用两个树状数组维护即可。
流水账
chenjb
md这个流量平衡绝对是我的锅
oipotato
subconscious
题解
- A:整个行为可以视为一个序列,到最后一个1结束,可以直接算出对于一个集合,这个集合都被抽完的概率,前缀减即可。
- B:模拟。
- C:对于每个数统计互质的数*(n-1-互质的数),答案是所有人-和/2。
- D:一定保留连续的一段,答案是方差,直接统计。
- E:直接dp。
- F:
- G:考虑每个人要么小于阈值,要么高于阈值,且肯定在其中选择w最大的,然后海明距离为1的点连边可以按1的个数奇偶分成二分图,对于奇,S向i连w[L[i]]流量的边,i向T连w[R[i]]流量的边,偶反过来。然后对于额外收益直接奇向偶连,跑网络流求最小割即可。注意:由于w有负数,可以统一抬高到正数,但是额外收益不能一起抬,因为会导致流量不平衡。
- H:打表,不要产生重复数字,半分钟内打完,104的答案是10比较慢。
- I:按题意模拟,注意不要溢出。
- J:
- K:暴力枚举匹配情况,polya。
- L:就是在AC自动机的fail树上进行,将给定点集的子树并+1,询问给定点集到根的链并之和。对于操作,子树的并按dfs序排序之后,如果当前修改的点在上一个修改的点的子树里,就直接删除;对于询问,按dfs排序后,每个人到根的答案-相邻lca到根的答案。对于到根的路径上每个标记,贡献是两个点的深度差,用两个树状数组维护即可。