摘要: 传送门:洛谷P2375 一直到写到这道题目才发现我一直都理解了假的KMP……fail数组:fail[i]为从1-i(包含i)在内的字符串,相同的最长前后缀长度。 那么我们可以先思考暴力:先求出所有的fail,再不断往上跳,那么跳到的节点中(fail<<1)<i的个数即为num值。但这样的复杂度太高了 阅读全文
posted @ 2018-02-07 16:56 Twilight_Sx 阅读(727) 评论(0) 推荐(0) 编辑
摘要: 我果然还是太弱了呜呜呜……洛谷P3205 区间dp:注意到一段区间最两侧的人必然是最后加入队伍的所以由此我们可以分成两种情况来讨论。 一种是最后一个加入的人是左边的,另一种是右边的。那么状态:dp[i][j][0/1]表示从摆放好i-j号的人,最后放下的在左边/在右边的方案数。 阅读全文
posted @ 2018-02-07 14:50 Twilight_Sx 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 强!强!强!强!劲啊劲啊劲啊!!!洛谷P2467 非常重要的,就在于发现以下的两条性质: 1.当i与i+1不相邻时,方案数是一样的:交换这两个数,<i+1的必然<i,>i+1的必然>i,又因为i+1与i不相邻,所以>i的>i+1,<i+1的也<i。 2.将每个数变成(n+1-i)时,仍然是满足性质的 阅读全文
posted @ 2018-02-07 00:08 Twilight_Sx 阅读(247) 评论(0) 推荐(0) 编辑