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分析

解题思路

题意:给定长度为 nnn 的货位序列,每个位置放一种商品(编号从 1 开始)。再给出 mmm 个要求数组 b[1..m]b[1..m]b[1..m],表示第 xxx 类商品在区间内至少出现 bxb_xbx​ 次。求满足所有要求的最短连续区间长度,不存在则输出 -1。

核心算法:双指针滑动窗口

  1. 只关心 bx>0b_x>0bx​>0 的品类,其余视为无需约束。
  2. 先做一次可行性预检:统计整段序列每个品类的总次数 total[x],若存在 total[x] < b[x](且 b[x]>0),则必无解,直接输出 -1。
  3. 使用左右指针维护当前窗口 [l, r],并用 cnt[x] 统计窗口内每个品类出现次数。

P3829.第1题-超市备货检查

    1000ms Tried: 175 Accepted: 48 Difficulty: 5 所属公司 : 京东
    算法与标签>双指针

题目内容

某超市要对一批货架上的商品进行备货检查。货架上共有 nnn 个连续的货位(编号 111 到 nnn ),每个货位上放置着一种商品。当前超市有 mmm 类商品(编号 111 到 mmm ),其中第 xxx 类商品要求在检查区间内至少出现 bxb_xbx​ 次 (bxb_xbx​ 为非负整数)。

请找出长度最短的连续货位区间 [l,r][l,r][l,r] ,使得该区间内 111 到 mmm 类商品的出现次数均满足上述要求。我们定义区间长度为 r−l+1r-l+1r−l+1 。若不存在这样的区间,输出 −1-1−1 。

输入描述

第一行包含两个整数 nnn 和 m(1≤n,m≤105)m(1≤n,m≤10^5)m(1≤n,m≤105) ,分别表示货位总数和商品的类别数。

第二行包含 nnn 个整数,依次表示每个货位上的商品编号。

第三行包含 mmm 个整数,依次表示第 111 到 mmm 类商品的最低出现次数要求( b1b_1b1​ 到 bmb_mbm​ ) 。

保证商品编号为不超过 10510^5105 的非负整数。

输出描述

输出一个整数,表示满足要求的最短区间长度;

若不存在,输出 −1-1−1 。

样例1

输入

10 4
3 1 2 1 3 4 2 1 3 2
2 1 0 1

输出

5

说明

重点监拉的 444 类商品要求:

商品 111 :至少出现 222 次;

商品 222 :至少出现 111 次;

商品 333 :至少出现 000 次(无要求);

商品 444 :至少出现 111 次。

其中一种符合要求的最短区间是 [4,8][4,8][4,8] (商品序列为 [1,3,4,2,1][1,3,4,2,1][1,3,4,2,1],长度为 555 。

登录后即可使用 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 0, 31ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

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

Forgot password or username?