时间安排
7:40 - 7:50
看题。
7:50 - 8:50
A 题看了一会意识到是并查集,但是我没有发现只需输出亮着的魔法灯的个数模 2 意味着什么,直接统计了个数,于是被 1 操作给卡了。想了很长时间才发现只需维护奇偶就可以。
8:50 - 10:00
写了个 B 的爆搜,同时输出了方案。通过几个样例的最优解的方案猜了个结论,直接通过大样例。
10:00 - 11:30
C 题写完爆搜也如法炮制输出了方案,但是并没有发现什么规律。于是开始写 60 分的区间 DP。cannotdp 石锤了,比较简单的 DP 写了一个小时,最后还挂了 10 分。
11:35 - 11:50
D 题随便输出了个 1,检查 freopen 和 子文件夹。
总结反思
- 总是被简单的地方卡住,转不过弯。
- DP 熟练度还是不够。
题解
A.魔法灯
并查集板子。
B.战争
找规律,直接贪心。
C.消消乐
打表发现最优策略是把 1 留到最后删,每段分别删。
D.小球进洞
对于两个 \((x_i,y_i)\),\((x_j,y_j)\),若 \(x_i<x_j\),\(y_i>y_j\),则若 \((x_i,y_i)\) 是向右的,那么 \((x_j,y_j)\) 也必须是向右的。换句话说,把“向右”叫做“选”这可以等价成求一个上升子序列;“向左”叫做“不选”,如果\(x_i<x_j\),\(y_i>y_j\),\(i\)“选了”,\(j\) 就必须“选”。这可以等价成求一个上升子序列,所以只需要求一个上升子序列计数。
标签:11,10,14,23,50,输出,序列,DP From: https://www.cnblogs.com/cannotdp/p/17766947.html