Examples

2023-2-15 #38 莫说就此别过 万篇唱过 噩梦与温存

——闹闹丶《失重怀想》

208 AT_code_festival_2017_quala_f Squeezing Slimes

这种都不会做🤧???

锣鼓题解感觉比较感性,翻译一下官方题解。

一个数用 \(\lceil\log x\rceil\) 次操作组合出,而且这个数一定是下界。多个数我们可以把相邻的数一起操作减少一次,具体地,若第 \(i\) 个位置左侧、右侧分别操作了 \(l_i,r_i\) 次,则答案可以减少 \(\sum\min(r_i,l_{i+1})\)

下面给出一个优秀的策略,我们不妨记一个数对应的三元组是 \((l_i,t_i,r_i)\)(注意到 \((l_i,t_i,r_i)+(l_j,t_j,r_j)=(l_i,t_i+t_j-\min(r_i,l_j),r_j)\)),表示左侧、总共、右侧的操作次数:

  • \(x=2^k\),则直接使用 \((k,k,k)\)
  • 否则 \(2^k<x<2^{k+1}\),我们使用 \((k-1,k,k)\)\((k,k,k-1)\)

得到这个策略后很容易通过 DP 或者贪心线性求解。

接下来我们证明可行性与最优性,先证明可行:

\(x=2^k\) 显然,我们直接看 \(2^k<x<2^{k+1}\),两个同理我们只考虑 \((k-k,k,k)\)

套一层归纳,假设 \(\leqslant 2^k\) 的数我们都会组合了。通过讨论 \(x-2^k\)\(2^{k-1}\) 的大小关系很容易发现 \(x-2^k\)\(2^k\) 合并总能达到 \((k-1,k,k)\)

最优性分两个方面:

  • \(t_i\) 上的最优:显然有 \(2^{t_i}\geqslant x\)
  • \(l_i+r_i-t_i\) 上的最优:可以发现 \(l_i+r_i-t_i\) 为全局操作次数,而全局操作一次数字减半,所以有 \(2^{l_i+r_i-t_i}\leqslant x\)

因此我们的 \(\sum t_i\) 达到了最小,而由于每个 \(l_i+r_i-t_i\) 都是最大值,若某些 \(t_i\) 变大一定不会使新的答案更优。

209 AGC061D Almost Multiplication Table

无语题!!!

210 AGC055C Weird LIS

让我想起了 P8554 心跳 啊!

所有数字一定要么是 LIS 要么是 LIS 减一,我们简单去除掉所有数字相等的情况,那么剩余的情况最大值一定对应 LIS 的值:(我们记 LIS 的值为 \(l\)

  • 全为 LIS 减一:当且仅当 \(l=n-1\)
  • 全为 LIS:当且仅当 \(l\leqslant\lfloor\frac n2\rfloor\),很容易给出构造:\(\{n,n-1,\cdots,2l+1,2,1,4,3,\cdots,2l,2l-1\}\)

那么只用考虑哪些位置去掉后 LIS 减少,

无语!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

211 P7670 [JOI2018] Snake Escaping

很经典的技巧啊,现在才了解到。

于是下午都在摆~~~~~~~~~~

212 CF1566H Xor-quiz

posted @ 2023-02-15 09:51  xiaoziyao  阅读(227)  评论(5编辑  收藏  举报