1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol AI分析

解题思路

这道题与经典的“非交叉连线”/“最长公共子序列(LCS)”完全等价:

  • 若把 nums1[i] 与 nums2[j] 连线,要求所有连线不相交,就意味着这些配对的下标必须保持共同递增顺序(即若 (i1, j1)、(i2, j2) 都被选中且 i1 < i2,必须有 j1 < j2)。
  • 这正是最长公共子序列的定义:从两个序列中找一个顺序一致的最长相同子序列。 因此,答案就是 LCS(nums1, nums2) 的长度。

算法:动态规划(LCS)

P3858.第3题-不想交线的条数

    1000ms Tried: 25 Accepted: 10 Difficulty: 5 所属公司 : 网易
    算法与标签>动态规划

题目内容

在两条独立的水平线上按给定的顺序写下 nums1nums1nums1 和 nums2nums2nums2 中的整数。

现在,可以绘制一些连接两个数字 nums1[i]nums1[i]nums1[i] 和 nums2[j]nums2[j]nums2[j] 的直线,这些直线需要同时满足满足: nums1[i]==nums2[j]nums1[i]==nums2[j]nums1[i]==nums2[j]

且绘制的直线不与任何其他连线(非水平线)相交。

请注意,连线即使在端点也不能相交:每个数字只能属于一条连线。

以这种方法绘制线条,并返回可以绘制的最大连线数。

1<=nums1.length,nums2.length<=20001 <=nums1.length,nums2.length<=20001<=nums1.length,nums2.length<=2000

1<=nums1[i],nums2[i]<=20001 <= nums1[i],nums2[i]<= 20001<=nums1[i],nums2[i]<=2000

输入描述

每组输入为两行,表示 nums1nums1nums1 和 nums2nums2nums2 两个数组。每行有 n+1n+1n+1 个数字,数字间用空格分开,第一个数字表示数组个数 nnn ,后面跟 nnn 个数字;如 222 232323,表示数组有 222 个元素,元素值为 222 和 333

输出描述

输出最多能绘制不想交线的条数。

样例1

输入

3 1 4 2
3 1 2 4

输出

2

样例2

输入

5 1 2 2 3 4
5 2 2 2 4 1

输出

3

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 3, 39ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?