[徐州网络赛]Longest subsequence

可以分成两个部分,前面相同,然后下一个字符比对应位置上的大。

枚举这个位置

用序列自动机进行s字符串的下标转移

注意最后一个字符

#include <bits/stdc++.h>

const int maxn = 1e6 + 7;
using namespace std;
#define ll long long
int n, m;
char s[maxn], t[maxn];
int nex[maxn][27]; void init() {
for (int k = 0; k < 26; ++k) nex[n][k] = -1;
for (int i = n; i >= 1; --i) {
for (int k = 0; k < 26; ++k) {
nex[i - 1][k] = nex[i][k];
}
nex[i - 1][s[i] - 'a'] = i;
}
} int main() {
ios::sync_with_stdio(false);
cin.tie(0);
cin >> n >> m;
cin >> s + 1 >> t + 1;
int minn;
int ans = 0;
int i, j;
init();
for (j = 0, i = 0; j <= m; ++j) {
minn = 1e9;
for (int k = max(0, t[j + 1] - 'a' + 1); k < 26; ++k) {
if (nex[i][k] != -1) {
minn = min(nex[i][k], minn);
}
}
if (minn != 1e9) {
ans = max(ans, n - minn + 1 + j);
}
if (j == m) break;
i = nex[i][t[j + 1] - 'a'];
if (i == -1) {
break;
}
}
if (ans == 0) {
cout << -1 << endl;
} else {
cout << ans << endl;
}
return 0;
}

[徐州网络赛]Longest subsequence的更多相关文章

  1. ICPC 2019 徐州网络赛

    ICPC 2019 徐州网络赛 比赛时间:2019.9.7 比赛链接:The Preliminary Contest for ICPC Asia Xuzhou 2019 赛后的经验总结 // 比赛完才 ...

  2. 2018 ICPC 徐州网络赛

    2018 ICPC 徐州网络赛 A. Hard to prepare 题目描述:\(n\)个数围成一个环,每个数是\(0\)~\(2^k-1\),相邻两个数的同或值不为零,问方案数. solution ...

  3. 计蒜客 41391.query-二维偏序+树状数组(预处理出来满足情况的gcd) (The Preliminary Contest for ICPC Asia Xuzhou 2019 I.) 2019年徐州网络赛)

    query Given a permutation pp of length nn, you are asked to answer mm queries, each query can be rep ...

  4. 2019徐州网络赛 I J M

    I. query 比赛时候没有预处理因子疯狂t,其实预处理出来因子是\(O(nlog(n))\)级别的 每个数和他的因子是一对偏序关系,因此询问转化为(l,r)区间每个数的因子在区间(l,r)的个数 ...

  5. 2019icpc徐州网络赛

    A Who is better? 题意 excrt+斐波那契博弈 分析 Java的BigInteger对象默认为null,不能直接比较. 代码 import java.math.BigInteger; ...

  6. 2019 徐州网络赛 M Longest subsequence t

    对于答案来说,一定是 前 i-1 个字符和 t的前 i 个一样,然后第 i 个字符比 t的 大 \(i\in [1,m]\) 前缀为t,然后长度比t长 对于第一种情况,枚举这个 i ,然后找最小的 p ...

  7. 徐州网络赛F-Feature Trace【暴力】

    Morgana is learning computer vision, and he likes cats, too. One day he wants to find the cat moveme ...

  8. ACM-ICPC2018徐州网络赛 Features Track(二维map+01滚动)

    Features Track 31.32% 1000ms 262144K   Morgana is learning computer vision, and he likes cats, too. ...

  9. 徐州网络赛B-BE,GE or NE【记忆化搜索】【博弈论】

    In a world where ordinary people cannot reach, a boy named "Koutarou" and a girl named &qu ...

随机推荐

  1. Short Essay你真的会写了吗?

    提到short essay(可能其他essay也一样),很多同学都很头疼.“没有思路?不知从何下笔?没有亮点?”等等,这些都是同学们的致命伤,因此,short essay就成为了广大留学生的“送命题” ...

  2. 吴裕雄--天生自然JAVA SPRING框架开发学习笔记:Spring IoC容器BeanFactory和ApplicationContext

    IoC 是指在程序开发中,实例的创建不再由调用者管理,而是由 Spring 容器创建.Spring 容器会负责控制程序之间的关系,而不是由程序代码直接控制,因此,控制权由程序代码转移到了 Spring ...

  3. 吴裕雄--天生自然JAVA SPRING框架开发学习笔记:Java Spring的特点和优点

    Spring 是另一个主流的 Java Web 开发框架,该框架是一个轻量级的应用框架,具有很高的凝聚力和吸引力. Spring 是分层的 Java SE/EE full-stack 轻量级开源框架, ...

  4. great vision|be quite honest with you

    won a national championship拿到全国冠军 come play for you参加你的队伍 Really not true事实并非如此 Being the Socratic p ...

  5. lvm 逻辑卷分区删除恢复

    原因:执行 lvremove /dev/system/lv_trans 删除逻辑分区 恢复: 1.进入到lvm查看元数据 cd /etc/lvm/archive 2.恢复元vg卷组 vgcfgrest ...

  6. Python笔记_第五篇_Python数据分析基础教程_相关安装和版本查看

    1. IDE说明: 所有的案例用Anacoda中的Jupiter工具进行交互式讲解. 2. 版本和安装: NumPy从如下网站安装:http://sourceforge.net/projects/nu ...

  7. Python说文解字_杂谈09

    1. 元类编程代码分析: import numbers class Field: pass class IntField(Field): # 数据描述符: # 初始化 def __init__(sel ...

  8. nexus3安装 - CentOS7环境

    nexus3安装 - CentOS7环境 使用nexus3管理docker镜像,配合rancher进行部署. 建资料卷 资料卷默认地址:/var/lib/docker/volumes/资料卷名/_da ...

  9. python编程:从入门到实践----第六章>字典

    一.一个简单的字典:alien_0存储外星人的颜色和点数,使用print打印出来 alien_0 = {'color': 'green','points': 5} print(alien_0['col ...

  10. [极客大挑战 2019]Http

    0x00知识点 了解HTTP协议,使用bp伪造. 0x01 解题 首先查看源代码,找到Secret.php 访问 使用bp查看 提示我们需要来自该网址,直接改header头信息即可,我们可以通过使用r ...