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

题目描述

你是一名网络工程师,正在开发一个虚拟机管理系统,需要管理虚拟机的资源ID。为了确保每个虚拟机的ID唯一且可复用,你设计了一个资源池,支持三种操作: 动态分配:从资源池中按顺序分配指定数量的资源ID,适用于新创建的虚拟机。 指定分配:指定一个资源ID进行分配,适用于恢复或迁移的虚拟机。 释放资源:释放已经分配的资源ID,使其可再次使用。 每当资源ID被分配或释放时,资源池的管理会调整顺序,使得资源ID能够合理复用。你需要在执行操作后输出资源池的第一个空闲资源ID。

思路

P2393.第2题-分配资源ID

    100ms Tried: 273 Accepted: 31 Difficulty: 8 所属公司 : 华为
    算法与标签>链表

注意:

100ms,基本就意味着除cpp以外,其他语言不太能通过了。

--------------------4-27更新----------------

根据群友消息,由于本场题目确实太难,相较通过率太低,所以华子HR决定这次没过的可以重考,参加下次的5.6的笔试!

题目内容

你是一名网络工程师,你正在为一家云计算公司开发一个虚拟机管理系统。你的系统需要为每个虚拟机分配一个唯一的ID,用来标识和通信。为了实现这个功能,你设计了一个管理ID的资源池,可以从资源池中分配资源ID和释放资源ID,分配方式有动态分配和指定分配。

动态分配是从资源池的开始分配一个资源ID,这种方式适用于新创建的虚拟机。指定分配是指定一个资源ID进行分配,这种方式适用于恢复或迁移的虚拟机。无论哪种分配方式释放资源ID时都需要放到资源池的尾部,这样可以保证资源ID的重用和均衡。

现在,你已经执行了一系列操作,你需要知道资源池的第一个空闲资源ID应该是多少,以便为下一个虚拟机分配。

注意:

资源池的初始顺序是从小到大。

资源池中空闲资源ID不足时,动态分配失败,对资源池不进行任何操作。指定分配资源ID已经被占用或者不在资源池范围内时,对资源池不进行任何操作。

释放资源ID不在资源池范围内时或者已经是空闲资源ID时,对资源池不进行任何操作。

保证每个用例最后都有空闲资源ID。

输入描述

输入第一行为两个整数 lll 和 rrr ,表示资源池的范围;

输入第二行为一个整数 ttt ,表示操作个数。

第三行开始,第一个数字代表操作类型 opopop , 111 表示动态分配, 222 表示指定分配, 333 表示释放;

如果输入的第一个数字是 111 ,第二个表示分配的个数 numnumnum ;

如果输入的第一个数字是 222 ,第二个表示分配的资源ID;

如果输入的第一个数字是 333 ,第二个表示释放的资源ID。

1≤l<r≤1000001\le l\lt r \le 1000001≤l<r≤100000 ,1≤t≤1000001\le t \le 1000001≤t≤100000 ;

1≤op≤31\le op \le 31≤op≤3 , 1≤num≤2001\le num\le 2001≤num≤200 。

输出描述

资源池的第一个空闲资源ID。

样例

样例一

输入

1 3
2
1 1
3 1

输出

2

样例解释

第一行资源池范围是 [1,3][1,3][1,3] ,资源池的初始顺序是 1−>2−>31->2->31−>2−>3 。

第二行操作个数有 222 个。

第三行动态分配 111 个资源ID,资源池中剩余的资源ID顺序是 2−>32->32−>3 。

第四行释放 111 个资源ID、资源ID是 111 ,资源池中剩余的资源ID顺序是 2−>3−>12->3->12−>3−>1 。

执行以上操作后,资源池的第一个空闲资源ID是 222 。

样例二

输入

1 3
3
2 2
3 2
1 1

输出

3

样例解释

第一行资源池范围是 [1,3][1,3][1,3] ,资源池的初始顺序是 1−>2−>31->2->31−>2−>3 。

第二行操作个数有 333 个。

第三行指定分配 111 个资源ID,资源ID是 222 ,资源池中剩余的资源ID顺序是 1−>3−>21->3->21−>3−>2 。

第四行释放 111 个资源ID,资源ID是 222 ,资源池中剩余的资源ID顺序是 1−>3−>21->3->21−>3−>2 。

第五行动态分配 111 个资源ID,分配的资源ID是 111 ,资源池中剩余的资源D顺序是 3−>23->23−>2 。

执行以上操作后,资源池的第一个空闲资源ID是 333 。

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


ScanQRCodePrompt

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

Forgot password or username?