#17952. 密码锁
密码锁
题目背景
这天由于保安的疏忽大意,蒙自一中的大门被锁住了。
门是用密码锁锁住的,遗憾的是没有人知道密码是多少。
现在要强的 five_rice_water 站了出来,输入了一串密码。
但愿他能把门打开。
题目描述
现在 five_rice_water 输入了一个密码序列 , 真实的密码序列是 ,保证 ,其中 表示序列 的长度, 表示序列 的长度。
密码锁监测密码的规则是,当且仅当输入的 序列有一个子序列是 ,此时密码锁就会打开。
一个序列的子序列的定义是:若序列 可以通过删除某些数变成 序列,此时就说明序列 是序列 的子序列。
简化题意:给定两个序列 ,请你判断 序列是不是 序列的子序列
如果 序列是 序列的子序列,输出 Yes
,否则输出 No
。
Tips:本题采用捆绑测试,所以如果你单纯的输出
Yes
或者No
,得分可能会比你想象的少得多。
输入格式
输入第一行两个整数 ,分别表示序列 和序列 的长度。
接下来一行 个整数,表示输入的密码序列 。
接下来一行 个整数,表示原本真实的密码序列 。
输出格式
如果 是 的子序列,那么输出 Yes
,否则输出No
。
5 3
1 2 3 4 5
1 3 5
Yes
5 3
1 2 3 4 5
1 5 3
No
7 4
1 5 4 3 1 7 6
1 4 6 5 3
No
7 4
1 4 5 3 1 7 6
1 3 1 7
Yes
样例解释
对于样例1,可以在序列 中删除 位置的数,得到序列 。
对于样例4,可以在序列 中删除 位置的数,得到序列 。
对于样例 ,可以证明没有删除数字的方案,使得 序列在删除某些数字以后变成序列 。
数据范围
对于 的数据,保证最终大门成功打开。
对于另外 的数据,保证 。
对于另外 的数据,保证 。
对于 的数据,保证 且 。