do_while_true

一言(ヒトコト)

11 2021 档案

摘要:尝试构造使得树上任意两点间都不能互相到达,这样能达到答案的上界 \(n\).(由于不能走动,所以先手永远必胜) 观察 \(u\oplus v\leq \min(u,v)\) 当且仅当 \(u,v\) 二进制下最高位相同。 假设 \(u<v\),最高位为 \(k\).如果最高位相同的话,\(u\opl 阅读全文
posted @ 2021-11-13 18:39 do_while_true 阅读(101) 评论(0) 推荐(2) 编辑
摘要:转化成逆排列(下标和值互换),设其为 \(Q\),那么操作就变成了如果 \(|Q_i-Q_{i-1}|\geq k\),则可以交换 \(Q_i,Q_{i-1}\),也就是对于任意的 \(i<j,|Q_i-Q_j|<k\),\(Q_i\) 始终要在 \(Q_j\) 前面。 如果钦定了某些元素之间的相对 阅读全文
posted @ 2021-11-09 18:47 do_while_true 阅读(34) 评论(0) 推荐(2) 编辑
摘要:感觉直接 Tarjan 2-SAT 什么的还是想复杂了吧( 观察到一家要不然选人要不然选猫,枚举第一家是选人还是选猫。 假如其选了人,那么第一家人所对应的猫的家,也必须选人(因为猫不能选了)。这样继续往后推,如果所有家都被推得了选人,那么就不合法,否则剩余所有家都选猫,即构造出一组合法方案。 实现上 阅读全文
posted @ 2021-11-04 17:38 do_while_true 阅读(25) 评论(0) 推荐(1) 编辑
摘要:被构造橄榄了/ll 当 \(i<10^{18}\) 时,有 \(f(i)=f(i+10^{18})+1\). 设 \(s=\sum_{i=1}^{10^{18}}f(i)\),根据结论,可以归纳证明 \(\sum_{i=1+b}^{10^{18}+b}f(i)=s+b\pmod a\),所以当 \( 阅读全文
posted @ 2021-11-01 16:58 do_while_true 阅读(42) 评论(0) 推荐(1) 编辑
摘要:三元环计数,于是考虑暴力。答案显然为每个点的入度 \(\times\) 出度和,每次修改一个点的时候,遍历所有的入边,将其改为出边,更新答案,一次更新的复杂度是 \(\mathcal{O}(入度)\) 的。 不妨设 \(n,m,q\) 同阶,下面证明其复杂度为 \(\mathcal{O}(n\sqr 阅读全文
posted @ 2021-11-01 16:27 do_while_true 阅读(22) 评论(0) 推荐(1) 编辑