前言
可能会不打代码, 不然没时间补题了
\(\textrm{A - Distance to Different}\)
思路
不难发现, 相当于找本质不同的超过 \(k\) 段的分段方式有多少种
一番观察之后发现, 好像只有 xx | 1 | 1 | xx
和 xx | 1 1 | xx
是本质相同的
然后很简单就做完了
总结
转化问题的方式很对啊, 接着搞
\(\textrm{B - Shuffle}\)
思路
没瞪出来, 注定只能度过一个相对失败的人生
发现问题转化为
- 删除一个叶子结点之后的树的最大独立集 + 1
- 原树的最大独立集
的最大值
这个需要自己写一下, 博客见
\(\textrm{C - Min-Fund Prison (Medium)}\)
思路
需要自己做, 博客见
\(\textrm{D - GCD on a grid}\)
是简单的
\(\textrm{E - Learning to Paint}\)
你发现可以神秘优化, 然后做完了
这题没想出来, 神神秘秘啊
\(\textrm{F - Modular Sequence}\)
发现会到最后怎么搞都是背包 \(\mathcal{O}(n^2)\) 的, 然后就不会了
路上尝试了一车 \(\rm{bitset}\) 但是因为技艺不精并没有搞出来
然后看题解发现可以处理最短的情况再去判断, 于是做到了 \(\mathcal{O}(n \sqrt{n})\) 发现这是智商问题于是扔掉了
本质上是这种平方类问题, 其值是有限制的
问题的关键在于发现可以转化成最短类问题把一维度甩掉, 反正这那的, 想想想