随机

CF1746F

考虑判定,区间和一定是 \(k\) 的倍数,但是不是充要条件,因为区间和可以被卡掉,那每次把所有数随机赋权再做即可。

正确性分析的话大概是考虑一个数不是 \(k\) 的倍数也未被考虑的情况,不超过 \(\frac{1}{2}\),于是 \(\log\) 遍就可以保证正确。

[NOI2013向量内积][https://www.luogu.com.cn/problem/P1224]

首先考虑 \(k=2\) 怎么做。

如果不存在这样的 \(i,j\),那么必然有内积为 \(1\),此时考虑对于每个 \(i\) 随一个集合 \(S\),求出 \(i\) 与这个集合内积的和,如果答案为集合大小可以认为全是 \(1\),这样的正确率是 \(1/2\)

\(k=3\) 内积可能为 \(1,2\),但平方后都为 \(1\),所以直接维护内积平方,拆开可以得到 \(d^2\) 维向量,采用相同办法即可。

THUPC2019 找树

笑点解析:计数。

值域很小,别惦记最优化了,考虑对于每个 \(x\) 求出构成 \(x\) 的方案数,找到第一个不为 \(0\) 就是答案。

然后矩阵树加 FWT 即可。

一般图最大匹配:tutte 矩阵

存在完美匹配:行列式不为 \(0\)

最大匹配:\(\frac{1}{2} \text{rank}\)

QOJ 8830

考虑取一个合适的质数 \(mod\) 使得 \(k−1|mod\)
考虑随机一个矩阵 \(b\),计算矩阵 \(G_{i,j}=b_{i,j}x^{a_{i,j}}\) 的 det,也就是让 \(x^t\)\(k\) 取模贡献到 \(x^{t \bmod k}\),而随机赋权 \(b\) 使得我们不会有几条路径相加
等于 \(0\) 导致错误。

直接带多项式可能要多几个 \(k\),要对 \(x^k-1\) 取模考虑 \(k\) 次单位根,带入单位根插值得到真实值。

CF1641D

把每个值映射到一个 \([1,15]\) 内的值,然后跑高维前缀和,多跑几遍。

CF1310D

奇环考虑二分图,把所有点随机分组,只保留不在同一组内的边跑最短路。

此时正确需要路径上的 \(k\) 个点分组黑白相间,正确率是 \(\frac{1}{2^{k-1}}\),跑 \(5000\) 遍即可。

CF1305F

注意到答案 \(\le n\),原因是可以把所有数变成偶数。

注意到我们可以 \(O(n)\) 求出给定一个 \(\gcd\) 的答案。

根据抽屉原理,至少有 \(\frac{n}{2}\) 个数操作次数 \(\ge 1\)

随机 \(t\) 个不同数,对 \(a_i,a_i-1,a_i+1\) 三个数都做质因数分解,取出质因子求答案即可,正确率为 \(2^{-t}\)

loj3400

注意到不可能选环,断掉环上边更优,树是二分图。

点随机分组,在不同组之间连边跑最大费用流,分析相同,跑 \(2^k \log\) 次即可。

进一步分析会选若干个菊花,网络流复杂度为 \(k^2(n+m)\)

qoj9774

相当于要求区间内的值域序列回文。

于是我们对值域序列字符串哈希,或者说维护 \(x^{a_i}\)\(x^{-a_i}\) 的和,而判断回文就是将 \(x^{-a_i}\) 区间平移到 \(x^{p-a_i}\),线段树维护即可。

posted @ 2025-01-19 10:35  Anonymely  阅读(13)  评论(0)    收藏  举报