ROIR 2025

ROIR 2025

评分 \(\in[0,10]\)

https://www.luogu.com.cn/problem/list?type=luogu&page=1&tag=479|62

二维蚱蜢

\(2\)

先贪心地往右上跳,跳到某维坐标与终点相同,再横着或竖着跳。

不完全质数

\(3\)

意义不明。

显然满足条件的数的形态是,恰有一位上的数字是质数,其余为 \(1\)

直接数位 dp。

酸雨

\(5.5\)

对于每个位置,其积水量为 \(\min(p_i,s_i)-h_i\)\(p_i\)\(s_i\) 分别表示其所在段内的前缀、后缀最大值,转化一下得到 \(p_i+s_i-\max(p_i,s_i)-h_i=p_i+s_i-h_i-H\)\(H\) 表示所在段的最大值。

分别维护这四个东西,\(h_i\)\(H\) 是非常简单的,而 \(p_i\) 在合并的过程中,右边的那段的前缀最大值数组,会有一段前缀变为左边那段的最大值,可以用线段树区间覆盖/求和维护,\(s_i\) 把序列反过来同理能做。

寻找宝藏

\(4\)

锻炼码力。

相邻两次结果作差分可以得到 一条斜线+一竖列 的数量情况。

\(i\) 扫描仪的情况可以由第 \(i-1\) 列的从内到外 \(k-1\) 条斜线的情况拼上第 \(i\) 列这一列单独的选择情况,可以 \(2^k\) 枚举,所以直接设计高维状压 dp 转移就行了。

平方差

\(3\)

\(x^2-y^2=d\),平方差公式得到 \((x+y)(x-y)=d\)\(O(\sqrt{d})\) 枚举 \(d\) 的因数(\(a,b\) 满足 \(ab=d\)),然后解方程。

不平衡划分

\(3.5\)

意义不明。

观察到选择的一定是一段区间作为最大值,一个长度为 \(1\) 的区间作为最小值。

这个东西随便维护,同时注意特判 \(k=2\) 后就可以过了。

个人 OI 比赛的原则

\(3.5\)

板子。

第一问,01 背包模板。

第二问,从最终状态往回 dfs,vector 记录方案,回溯时 pop_back 即可。

旅行路线

\(6\)

转化为从 \((1,1)\) 出发到 \((n,m)\) 的两条不相交路径。

肯定是一条为 \((1,2) \to (n-1,m)\) 的路径和一条为 \((2,1)\to (n,m-1)\) 的路径。

考虑单步容斥,用可能相交的方案数减去必相交的方案数。

既,用不限制相交,\((1,2) \to (n-1,m) \land (2,1)\to (n,m-1)\) 的方案数减去 \((1,2) \to (n,m-1) \land (2,1)\to (n-1,m)\) 的方案数(这个一定相交)。

求方案数,将点按 \(x+y\) 排序,二维 dp 转移。

dp 的设计和转移比较有价值。

posted @ 2025-10-05 17:09  Lucyna_Kushinada  阅读(14)  评论(0)    收藏  举报