闲话8.15
今天上午打了一场模拟赛,垫底了。
T2 是个原,搞了十多分钟再写了个拍拍上就扔了。然后我也不知道为什么刚了 2 个多小时 T1😥,但是好歹最后刚出来了,但是 T3 也就没时间想了,就差最后推出来那个式子了。T4 直接扔了。
最终得分:\(100+100+0+0=200\),被暴打了。
今天下午把模拟赛的题改了,然后就把暑假集训的游记给写了,地址放这了,写的不太好。
晚上吃完饭就收拾东西走人了,jimmy 也是真他妈不会考虑,三个人那么多行李让打车走,真搞笑。但是 jimmy 又会考虑,帮我们带走几件行李,无语😅😅😅
晚上回南校收拾了东西,顺便和初中组面了基,舒服🥰🥰🥰
!()[https://gitcode.net/crimson000000/picture/-/raw/master/博客用图/屏幕截图_2023-08-15_214834.png]
累死了,不想写了。
推歌:死奏怜音、玲珑ノ终 -nayuta
也是八字经典了,幽幽子的歌,算是比较早就进入我歌单的歌了,现在听还是觉得好听,有那种(无法形容)的意境。
P5999
之前做一道类似的题的时候就想把这题做了,但是当时咕了😥😥😥
本题可以用一个比较套路的做法:从 \(1\sim n\) 依次放,并同时维护连通块的数量。我们设 \(f_{i, j}\) 为已经放了 \(1\sim i\),当前有 \(j\) 个连通块时的方案数。
我们不考虑防止 \(s\) 和 \(t\) 的情况,我们考虑分情况讨论。
- 当前这个点新开一个连通块
这时我们一共有 \(j-1\) 个个连通块,因此我们有 \(j\) 个位置可以新加连通块。但是我们要注意当放入 \(s\) 或 \(t\) 后两边就无法放置连通块,因此我们的转移为:
- 当前这个点去合并两个连通块
我们合并两个连通块会使得连通块个数减少一,同时假设我们有 \(j+1\) 个连通块,我们就有 \(j\) 个位置可以用来合并。因此转移为:
- 当前这个点放到连通块两侧
这个情况不合法,因为如果考虑这个情况会导致出现 \(a_{i+1} > a_i > a_{i-1}\) 这种情况出现。因此不能转移。
而对于 \(s\) 和 \(t\) 的转移,我们只需要考虑新开或者放到某个连通块一边即可。
时间复杂度 \(O(n^2)\)。
B 站找的 fumo 图