模拟87

T1. maze

  答案显然具有单调性,直接二分答案,最短路check。

  似乎和维护凸包是一样的,最短路的作用也只是找到当前k在凸包上对应的是哪一条直线。

T2. bird

  考虑最基本的dp,$f_i$表示i时刻打鸟的最大收益,转移很显然,然后考虑怎么优化掉一些东西,比如说集合的交集的个数。

  然后拿线段树优化就行了。

T3. stone

  考场上不会做,然后。。。。。就开始打表,发现了一些奇怪的性质:

  1.对于a串的每个点,它对应的是b串上连续的一段。

  2.在这一段中,会出现一些不合法的情况,但是这些不合法的状态都不是连续的。

  知道这两个性质之后,就可以直接讨论了:

  对于某对点,它若不合法,那么它的三个儿子: 1.i-1,j 2.i,j-1 3.i-1,j-1均无法转移到它。

  假设三个儿子全部合法,那么推一下不能转移的条件,可以得出i,j这对点在字符串中是逆序的。

  然后考试的时候就按照全部合法打了,然后就过对拍了,然后。。。。就AC了。

  实际上,不一定全部合法,但是判断条件不变。

  skyh证明挺好的:大脸

posted @ 2019-10-25 21:42  tdcp  阅读(139)  评论(1编辑  收藏  举报