C++设备任务链 算法挑战
学习之路可以浏览和编辑代码,登录后可保存草稿及运行测试。
最近运行与提交
还没有运行记录。
设备任务链
在没有分步提示的新场景中,独立应用本单元的数据结构。
需求与输入输出
第一行操作数 q≤5000,初始链为空。I p x:将正整数 x 插入 p 后,p=0 表示头部;若 x 已存在或 p 非零且不存在则拒绝。D x:删除 x,不存在则拒绝。编号不超过 10⁹,删除后可重用。先输出 REJECTED k,再输出最终链的编号顺序;空链为 EMPTY。
使用 C++17。输入符合协议,编号从 1 开始;除特别说明外,n、q 均不超过 100000。不要输出额外提示语。
样例输入
5
I 0 1
I 1 2
I 0 3
D 1
D 9
样例输出
REJECTED 1
3 2
验收要求
- 正确处理单元素、空结构或无匹配情况。
- 更新后查询反映最新状态;多个测试之间不共享状态。
- 累计量使用 long long。
实现建议
可以使用哨兵和 next 映射表示链;插入需要先保留原后继,删除需要重新连接前驱。
先手工推演样例,再独立编写实现。通过测试后需正式提交,才计入编程成果。
卡住了?展开提示
可以使用哨兵和 next 映射表示链;插入需要先保留原后继,删除需要重新连接前驱。