闲话12.8

发布时间 2023-12-08 21:14:55作者: crimson000

颓。

上午把物理样卷 2 做了,AK 了。然后看了一个小时生物就润去考生物了,没啥感觉,不会的也不多,勉强能上 90pts?

发现 lyt 的准考证上写的班级是 B20???

明天就可以润啦!润到 BJ 天天也不用跑那傻逼操也他妈不用受任意一科老师管控也不会被 jimmy 一天看两个小时 jk 了!!!

妈的 jimmy 怎么他妈天天看 jk,学长说一天能看俩小时,太他妈抽象了???。

下午晚上学 OI。把做的 ds 题稍微写了写题解,放我博客里了(

话说 HZOI 的朋友们是不是看不了我的博客来着(,我上面挂的链接是 netlify 的,如果能上 github 可以试试这个,不过图片加载出来应该是正常的(,我博客上的图用的还是 gitcode。

昨晚 jimmy 来抓人,太抽象了。

晚上闲的没事想学化竞的,突然想起来自己想写写边分治。打开洛谷点分治题解区没一道边分治???。

lyt 还在生物考试的时候出了一道数列题???。

lyt:卧槽感觉这道题能投给学校
lyt:感觉这道题能做20或21题的样子
lyt:可能做20有点偏难
lyt:那就21吧

拜谢 l6t???。

现在一天真是闲啊。

有人会证或者证伪这个吗:

\[\sum_{i=1} \frac{1}{(i+2)\sqrt{i+2}}\le \sqrt 2 \]


推歌:ビーストメトロポリス -上海アリス幻樂団

五面神曲。


P4590

考虑 dp,首先不出现 \(\texttt{NOI}\) 的限制是好处理的,直接在状态中加入一个和 \(\texttt{NOI}\) 匹配长度的维度即可。

一个朴素的想法是设 \(f_{i, j, l}\) 为填了前 \(i\) 个位置,与 \(s\) 的最长公共子序列为 \(j\),与 \(\texttt{NOI}\) 匹配长度为 \(l\) 的字符串数量,但是可以发现最长公共子序列的转移其实是错误的,我们这里实际是在贪心的匹配,而不是在使用 dp 求最长公共子序列,因此是错误的。

为了正确的求出最长公共子序列,可以考虑直接把一整个 dp 数组放到状态里来转移。设 \(g_{i, j}\)\(t\) 的前 \(i\) 个字符和 \(s\) 的前 \(j\) 个字符的最长公共子序列,可以发现第二维只有 \(15\) 个数,但是仍然放不进状态里。不过由于 \(g_i\) 的差分数组都不超过 \(1\),因此可以状压差分。

最终设状态为 \(f_{i,G_i,l}\) 表示前 \(i\) 个位置填了,当前和 \(s\) 的最长公共子序列的 dp 数组为 \(G_i\),与 \(\texttt{NOI}\) 的匹配长度为 \(l\) 的方案,转移分讨即可。

时间复杂度 \(O(nk2^k)\)