acgo题库
  • 首页
  • 题库
  • 题单
  • 竞赛
  • 讨论
  • 排行
  • 团队
  • 备赛专区

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
登录
注册
题目详情题解(0)讨论(0)提交记录(0)
  • 提供一种神秘做法(能A)

    考场上想出来的神秘做法,具体细节看注释。 时间复杂度:我不到啊 有没有佬能算出来 Code:

    userId_undefined

    亚洲卷王 AK IOI

    尊贵铂金
    67阅读
    9回复
    1点赞
  • 官方题解|线性探查法

    题目解析 我们考虑维护所有的为空的单元;对于「线性探测法」本质上就是找到 第一个大于等于 XXX 的空单元,若不存在这样的空单元,则寻找 第一个大于等于 000 的空单元。 那么我们可以考虑使用 std::set 来维护所有的 NNN 个空单元,并使用 std::map 来记录所有已经插入哈希表的元素分配到的位置即可。 时间复杂度:O(Qlog⁡N)\mathrm{O}(Q\log{N})O(QlogN)。 AC代码

    userId_undefined

    アイドル

    倔强青铜
    60阅读
    0回复
    1点赞
  • 线性探查法 - 正经题解

    这道题目考的是哈希,那肯定会卡哈希,所以我就不用 unordered_map 做了 本题插入的意思就是找到第一个内容为空的单元,如果直接暴力会被卡到 O(N)O(N)O(N)。 但是,众所又周知,线段树可以 O(log⁡N)O(\log N)O(logN) 找到第一个符合条件的点! 那么,模拟,秒了。 诶等等,在样例的第 444 次操作中,由于前面没有空位,它探测到后面去了! 没事,像合并石子一样,再复制一个拼接到后面就能当循环空间用了。

    userId_undefined

    复仇者_帅童

    尊贵铂金
    24阅读
    0回复
    1点赞
首页