福建省队集训 20180707
福建省队集训 20180707
以下是流水账
collection
只有这个是题解
考虑最大流,物品作为流量在不同的人之间流动。那么一个物品一定是经过一系列时间递增的边到1号的手中。交换的建图很容易想到
统计答案:
- 先让1号留一个自己的(很显然),并且不考虑1给其他人自己的,其他的人只考虑第一个在什么时候流到1,初始流量为1。
- 要交换到1的边不直接连到1的下一层,因为再拿这个去交换其他的不如直接拿1自己的去换,直接连到T
- 注意1最多只有a1个,再由T向TT连流量为a1-1的边。
- 注意同一时间只能有ai个在i点。
- 交换不对称的情况当成是没统计的那些点在换。
“大”样例一遍过了 这大概就是学OI的快乐吧
count
不会...
根号分治可以迫真n根号k O(n+k),因为对于<根号k的本质不同的转移只有根号个,然后相同的归一下类
正解:
\(f(i, j)\) 表示之后选的乘积不超过 \(i,\) 只考虑小等于j的数的方案数 若j \(\leq \sqrt{i},\) 暴力转移到\(f\left(\left|\frac{i}{j}\right|, j-1\right), \quad f\left(\left|\frac{i}{j^{2}}\right|, j-1\right)\) 等
若\(j>\sqrt{i}\),由于$j>\frac{i}{j}, f\left(\left\lfloor\frac{i}{j}\right\rfloor, j-1\right) $ 相当于 $ f\left(\left\lfloor\frac{i}{j}\right\rfloor,\left\lfloor\frac{i}{j}\right\rfloor\right)
$
分每种| $\left\lfloor\frac{i}{j}\right\rfloor $考虑(只有 \(O(\sqrt{i})\) 种),每个这样的j会让方案数加上 $ f\left( \left\lfloor\frac{i}{j}\right\rfloor,\left\lfloor\frac{i}{j}\right\rfloor\right)$ 用前缀和可以算出有多少个这样的j 暴力转移时可能要计算一个f(i,j)的值,动态算就可以了
\(i\) 只要考虑 \(\left\lfloor\frac{k}{x}\right\rfloor\) 的各种情况即可,类似洲阁师,这个做法的时间复杂度为\(O(n+k^{\frac 3 4})\)
NPIO十合一
提答题,感觉很妙。
题解里有以下操作:
- char存1e9数组卡内存
- 分段桶排/快排
- 拆数字+拆数组NTT
- n个char+\(n/256\)个int存size
- 提答题の暴力+期望复杂度
- bitset随便A
- 暴力猜+simulator验证
玄学的东西