#3905. 魔法连线探秘
魔法连线探秘
🐰😺🔗 兔猫信奥学院的魔法连线探秘 🔗😺🐰
在兔猫信奥学院的魔法画廊中,加菲老师展示了两条平行的能量链——上链记录着序列 nums1
,下链记录着序列 nums2
。传说,如果在两个能量点之间用魔法线相连,必须满足它们的能量值相同,且这些魔法线不能交叉——就像最完美的“通灵”连接。现在,小兔和小猫的任务是:在这两条能量链之间,最多能画出多少条不相交的魔法连线?
输入格式
第一行:整数 m,表示 nums1 的长度。
第二行:m 个整数 nums1[i],用空格分隔。
第三行:整数 n,表示 nums2 的长度。
第四行:n 个整数 nums2[j],用空格分隔。
输出格式
输出一个整数,表示可以画出的最大不相交连线数。
样例 1
3
1 4 2
3
1 2 4
2
- 解释:
最优连线为:
共 2 条。nums1[0]=1 ─ nums2[0]=1 nums1[2]=2 ─ nums2[1]=2
样例 2
5
2 5 1 2 5
6
10 5 2 1 5 2
3
样例 3
6
1 3 7 1 7 5
5
1 9 2 5 1
2
🎓 加菲老师寄语:
通过二维动态规划求最长公共子序列,你便能设计出最完美的魔法连线,不交叉、尽可能多。下次,我们将探索空间优化与“最长公共子串”等更深层算法,敬请期待!