当前位置: 首页 > news >正文

题解:AcWing 2816 判断子序列

【题目来源】

AcWing:2816. 判断子序列 - AcWing题库

【题目描述】

给定一个长度为 \(n\) 的整数序列 \(a_1,a_2,\dots,a_n\) 以及一个长度为 \(m\) 的整数序列 \(b_1,b_2,\dots,b_m\)

请你判断 \(a\) 序列是否为 \(b\) 序列的子序列。

子序列指序列的一部分项按原有次序排列而得的序列,例如序列 \(\{a_1,a_3,a_5\}\) 是序列 \(\{a_1,a_2,a_3,a_4,a_5\}\) 的一个子序列。

【输入】

第一行包含两个整数 \(n,m\)

第二行包含 \(n\) 个整数,表示 \(a_1,a_2,\dots,a_n\)

第三行包含 \(m\) 个整数,表示 \(b_1,b_2,\dots,b_m\)

【输出】

如果 \(a\) 序列是 \(b\) 序列的子序列,输出一行 Yes

否则,输出 No

【输入样例】

3 5
1 3 5
1 2 3 4 5

【输出样例】

Yes

【解题思路】

image

【算法标签】

《AcWing 2816 判断子序列》 #双指针#

【代码详解】

#include <bits/stdc++.h>
using namespace std;const int N = 100010;  // 定义数组最大长度int n, m;             // n: 数组a的长度, m: 数组b的长度
int a[N], b[N];       // 两个待比较的数组int main()
{// 输入数组a的长度和数组b的长度scanf("%d%d", &n, &m);// 输入数组a的元素for (int i = 0; i < n; i++){scanf("%d", &a[i]);}// 输入数组b的元素for (int i = 0; i < m; i++){scanf("%d", &b[i]);}// 双指针初始化int i = 0, j = 0;  // i指向数组a,j指向数组b// 遍历两个数组while (i < n && j < m){// 如果当前元素匹配,移动数组a的指针if (a[i] == b[j]){i++;}// 无论是否匹配,都要移动数组b的指针j++;}// 判断数组a是否是数组b的子序列if (i == n){puts("Yes");  // 数组a的所有元素都匹配到了}else{puts("No");   // 数组a还有元素未匹配}return 0;
}

【运行结果】

3 5
1 3 5
1 2 3 4 5
Yes
http://www.jsqmd.com/news/397378/

相关文章:

  • A.inverse ()*B 表示从 A 到 B 的变换
  • 免费福利!9个顶级AI降重网站大公开,智能改写+同义替换双模式,从此告别查重烦恼
  • 经专业测评筛选的9款AI降重工具,采用NLP深度改写技术,确保输出内容符合学术规范要求
  • 题解:AcWing 799 最长连续不重复子序列
  • 2026 AI原生开发痛点:用DeepSeek规避代码冗余与逻辑脱节问题
  • 数据标准化对大数据分析的影响:为什么说标准化是分析的基石?
  • 紧急降重必看!这9个AI网站能实时改写文本,5分钟搞定高重复率,拯救deadline神器
  • 2026 AI原生开发工具链趋势:DeepSeek与主流IDE深度联动实践指南
  • 提示工程架构师如何驾驭混合智能研究
  • 论文查重总不过?试试这9个AI降重神器,智能改写不改变原意,学生党科研人员必备工具推荐
  • 杰理之TWS RF【篇】
  • 题解:AcWing 797 差分
  • MyBatis-Plus12:JSON处理器
  • 题解:AcWing 796 子矩阵的和
  • MyBatis-Plus13:自定义 TypeHandler
  • 2026年论文降AI率工具选型指南:多模型对比改写的核心逻辑与高效解决方案 - 小白条111
  • 深度学习算法之深度学习框架(PyTorch)的使用场景和使用方法及算法,优化方法,缺点_blog
  • [豪の算法奇妙冒险] 代码随想录算法训练营第四十三天 | 300-最长递增子序列、674-最长连续递增序列、718-最长重复子数组
  • 移动开发如何巧用 RxJava 优化代码
  • 深度强化学习TD方法:核心算法、实战场景与优化全解析
  • 深度学习框架MXNet深度解析:从核心算法到工业部署实战
  • 彻底禁止win11系统更新的方法,关闭win11自动更新的教程
  • 一键彻底禁止Win11自动更新6大方法,Win11系统的自动更新怎么彻底关闭?
  • 2026年论文赶due神器深度测评:一站式搞定全流程的多模型AI工作台选型指南 - 小白条111
  • 图像分类实战
  • 支持多语种的9个AI降重平台,提供改写、扩写、缩写全功能,满足不同场景文本优化需求
  • 并查集 - [JSOI2008] 星球大战
  • 2026年论文降AI味工具选型指南:多模型协同如何解决单一AI的“模板化陷阱” - 小白条111
  • 模拟与存根实战:unittest.mock深度使用指南
  • HarmonyOS 6.0分布式应用开发全解析:从架构革新到跨设备协同实战