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

解题思路

核心思路

观察操作的本质:第 kkk 秒选择位置 xxx 时,若 xxx 与 x+1x+1x+1 颜色不同,则将 xxx 所在的整个同色区间染成 x+1x+1x+1 的颜色。这等价于将 xxx 所在连通块与 x+1x+1x+1 所在连通合并,合并时间为 kkk。

这提示我们使用 Kruskal 重构树 来维护连通块的合并过程:

  1. 构建重构树:初始时每个位置 iii(1≤i≤n1\le i\le n1≤i≤n)为独立的叶子节点。遍历 ttt 次操作,第 kkk 次操作选择位置 xxx 时:

P4786.第3题-连连连

    3000ms Tried: 14 Accepted: 4 Difficulty: 8 所属公司 : 阿里
    算法与标签>并查集

题目内容

有一排 nnn 个位置,从左到右编号为 1,2,…,n1,2,…,n1,2,…,n。每个位置都有一个 “颜色编号”(就是一个整数)。

一开始(记作第 000 秒),第 iii 个位置的颜色为 iii。

接下来会发生 ttt 次操作,按顺序依次执行。第 kkk 次操作(也就是第 kkk 秒)给出一个位置 xxx (保证 1≤x≤n−11≤x≤n−11≤x≤n−1),并进行如下事情:

  • 先找到一个最大区间 [L,R][L,R][L,R],满足:

    • L≤x≤RL≤x≤RL≤x≤R;
    • 在第 k−1k−1k−1 秒结束后,区间 [L,R][L,R][L,R] 内所有位置的颜色都与位置 xxx 的颜色相同;
    • [L,R][L,R][L,R] 不能再向左或向右扩展(也就是 L−1L−1L−1 或 R+1R+1R+1 的颜色与位置 xxx 不同,或者越界)。
  • 然后,把区间 [L,R][L,R][L,R] 内所有位置的颜色,都改成 “位置 x+1x+1x+1 在第 k−1k−1k−1 秒结束后的颜色”。

现在有 qqq 次询问。每次询问给出一个区间 [l,r][l,r][l,r],你需要回答:最早在第几秒(允许是第 000 秒),区间 [l,r][l,r][l,r] 内只存在一种颜色(也就是 l,l+1,…,rl,l+1,…,rl,l+1,…,r 这些位置的颜色全部相同)。如果直到第 ttt 秒都做完了也没发生,输出 −1−1−1。

输入描述

在一行上输入三个整数 n,t,q (2≤n,t,q≤2×105)n,t,q (2≤n,t,q≤2×10^5)n,t,q (2≤n,t,q≤2×105),表示位置数量、操作次数、询问次数。

此后 ttt 行,每行输入一个整数 x (1≤x≤n−1)x (1≤x≤n−1)x (1≤x≤n−1),表示这一秒选择的位置。

此后 qqq 行,每行输入两个整数 l,r (1≤l≤r≤n)l,r (1≤l≤r≤n)l,r (1≤l≤r≤n),表示一次询问的区间。

输出描述

对于每个询问,新起一行输出一个整数,表示最早在第几秒区间 [l,r][l,r][l,r] 内只存在一种颜色。若不存在,输出 −1−1−1。

样例1

输入

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

输出

4
3
2
0
4

说明

第 000 秒颜色为 {1,2,3,4,51,2,3,4,51,2,3,4,5}。

第 111 秒选择 x=4x=4x=4,位置 444 的颜色段只有它自己,染成位置 555 的颜色后,颜色变为 {1,2,3,5,51,2,3,5,51,2,3,5,5}。

第 222 秒选择 x=3x=3x=3,颜色变为 {1,2,5,5,51,2,5,5,51,2,5,5,5}。

第 333 秒选择 x=2x=2x=2,颜色变为 {1,5,5,5,51,5,5,5,51,5,5,5,5}。

第 444 秒选择 x=1x=1x=1,颜色变为 {5,5,5,5,55,5,5,5,55,5,5,5,5}。

因此:

  • 区间 [1,5][1,5][1,5] 最早在第 444 秒变成一种颜色;

  • 区间 [2,5][2,5][2,5] 最早在第 333 秒变成一种颜色;

  • 区间 [3,5][3,5][3,5] 最早在第 222 秒变成一种颜色;

  • 区间 [1,1][1,1][1,1] 在第 000 秒就已经只有一种颜色;

  • 区间 [1,2][1,2][1,2] 最早在第 444 秒变成一种颜色。

样例2

输入

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

输出

-1
1
-1
0

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


ScanQRCodePrompt

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

Forgot password or username?