Loading

代表元计数——CF720D Slalom 题解

代表元计数——CF720D Slalom 题解

首先这题路径数的定义与平时不太一样:如果其没有以不同的方式跨过障碍,即使路径所走的是不同的,也要算作一条。

对于算作一条的许多路径,如果可以使仅其中一条产生贡献,便可以解决问题。为了方便,这里取最低的一条,称作代表路径

\(f_{i,j}\) 表示走到 \(i,j\) 的代表路径数是多少。

如果没有矩形,直接 \(f_{i,j}=f_{i-1,j}\)

如果有矩形,形如下图:引用了前人题解图片,在此鸣谢。

设向下第一个碰到的第一个矩形上界为 \(u\) 那么 \(f_{i,j}=\sum_{k=u+1}^jf_{i-1,k}\)

从左到右扫描线,求和用线段树,找 \(u\)set 维护一下当前被覆盖的线段。复杂度 \(T:\mathcal O((m+k)\log n) M:\mathcal O(k)\)

posted @ 2025-06-11 16:27  lupengheyyds  阅读(7)  评论(0)    收藏  举报