noip2023 题解

T1

桶排,正着记 $s_i$,倒着记 $t_i$,若 $s_i\lt\min t_i$ 则符合条件,具体还有一些特判啥的,忘得差不多了

T2

设元,一开始 $a_i=i$,记 T 为 $10^9$,F 为 $-10^9$,U 为 $0$,按顺序模拟一遍,

  • + x y 则 $a_x=a_y$
  • - x y 则 $a_x=-a_y$
  • TFU 直接赋值

最后两两连边,如果一个联通快不能染色成功,或者里面有一个点是 U 就全 U。

T3

赛后口胡。

观察 dp 式子发现是一个连通性的形式,考虑每行障碍位置的集合总是包含关系,所以被挡住的这个障碍边界只可能是一个旋转的 L 或者一个竖着横着的 I。再对应到原序列上维护即可。

T4

考虑最简单的 dp,$f_i$ 表示到第 $i$ 天的最大收益,若这天不跑就 $f_i=f_{i-1}$,否则枚举这次连续跑步最开始的那天 $j$,$f_{i}=\max f_{j-2}+\text{<被完全包含在 [i,j] 的区间权值和>}$。瓶颈在第二种转移的后面一项,注意到对于一个固定的 $j$,这一项只会增加那些右端点在 $i$ 的区间,于是我们把右端点扔在桶里,在左端点扔贡献,做一遍后缀和就是对的,这里是 $nk+m$。再有这东西显然可以线段树维护之,于是 $(n+m)\log n$,赛时止步于此。正解使用离散化即可。

posted @   TernaKagiri  阅读(71)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?
点击右上角即可分享
微信分享提示