CodeForces 446A. DZY Loves Sequences(最长上升子序列)
摘要:题意:给定一个长度为n的序列,可以修改任何一个字符,求修改后最长的单调严格上升子序列(必须是连续的)。 分析:\((1 <= n < 10^5)\),数据范围很大,不能使用$o(n^2)$的算法。所以我们可以从线性角度考虑,一种常见的套路是枚举修改点,然后求最大值。我们只需要分别求出两端的情况即可,
阅读全文
A.牛牛扔牌(双端队列)/B.疯狂过山车(最长上升子序列)/C.牛牛的棋盘(容斥原理)
摘要:A.牛牛扔牌(双端队列) 题目链接:https://ac.nowcoder.com/acm/contest/6219/A 分析:支持从牌顶拿出和牌底拿出,可以想到一个数据结构(双端队列),于是我们可以用STL的deque,或者自己写一个。 class Solution { public: /** *
阅读全文
CodeForces 1363F. Rotating Substrings
摘要:题意:你被给予了两个字符串s和t,每个字符串的长度都是n并且是小写字母,你的目标是让s变成t。 你可以进行如下的操作多次,使得字符串s变成字符串t,选择字符串s的子串并使得它旋转,即让$s[l, l + 1...r]$变成字符串$s[r, l, l + 1...r - 1]$,其它字符保持原有的位置
阅读全文