说在前面
由于我初赛太逊了,导致我今年没去S2。不过我在复赛过后还是看了卷子,以下内容大概都是在独立思考下想出来的。
T1
感觉这个题比排水系统/julian良心。
不难发现飞机肯定是优先排在前面,那么也就是说我们先求出来有无限多廊桥的情况,然后作前缀和即可,国内和国际单独做,最后枚举0~n作为国内廊桥个数取max。
那么无限多廊桥的情况怎么弄呢?一开始属实把我整不会了。后来想想,主要是解决几个东西:
1.找到最前面的空廊桥(查询)
2.进入空廊桥(单点加)
3.起飞(单点减)
不难发现直接一波线段树二分完事,不过目测码量有点大。
rush成功了,一遍过,3.14KB,不过普遍比其他做法慢3倍。哈哈。
T2
看到题目感觉挺震撼,什么东西啊。
后来仔细分析,注意到了\(n \le 500\),确认是一个区间dp了应该。
那很容易想到设\(f1,f2,\cdot,[i,j]\)为某种情况下的\([i,j]\)的个数,考虑转移即可。
(还没写代码)
T3
还没想,看上去像一个比较思路清奇的题。
T4
不会,不做评价!