← 回到练习

C++哈希桶中的完整键 算法挑战

学习之路
代码工作区 Tab 缩进 · 手动保存
测试反馈
可以浏览和编辑代码,登录后可保存草稿及运行测试。

最近运行与提交

还没有运行记录。

提示与任务说明

哈希桶中的完整键

在没有分步提示的新场景中,独立应用本单元的数据结构。

需求与输入输出

第一行桶数 b(1~1000)和操作数 q≤5000。按 key%b 分桶,key 为 0~10⁹。I key 插入,重复忽略;D key 删除,不存在也忽略;F key 查询,输出 FOUND 或 NOT_FOUND。不同键即使同桶,也必须分别保留。

使用 C++17。输入符合协议,编号从 1 开始;除特别说明外,n、q 均不超过 100000。不要输出额外提示语。

样例输入

2 5
I 1
I 3
D 1
F 1
F 3

样例输出

NOT_FOUND
FOUND

验收要求

  • 正确处理单元素、空结构或无匹配情况。
  • 更新后查询反映最新状态;多个测试之间不共享状态。
  • 累计量使用 long long。

实现建议

桶编号不是完整键。用拉链保留桶内所有键,删除时只删除真正匹配的元素。

先手工推演样例,再独立编写实现。通过测试后需正式提交,才计入编程成果。

卡住了?展开提示

桶编号不是完整键。用拉链保留桶内所有键,删除时只删除真正匹配的元素。