哈希表及set容器的应用

欢迎补充。

这几题主要使用到如下几种STL容器,希望大家能够掌握:

unordered_map
unordered_set
unordered_multimap
unordered_multiset
set
map
multiset
multimap

10/20更新:请大家可以学着手写hash表,哈希表的实现方法有很多种,在此给出一种实现

bool insert(int num){
//尝试把num插入哈希表va中,若num已经存在哈希表中,则不做修改,并返回false,否则插入,并返回true。
unsigned int ind = ha(num)%maxva;
while(va[ind].first&&va[ind].second!=num)ind=((++ind)%maxva);
if (va[ind].first==true&&va[ind].second==num)return false;
va[ind]=make_pair(true,num);
return true;
}

各题数据情况及分析:
1. “门票”为基础模板题,但由于有一个点卡内存,所以使用STL自带hash表最多90分,大佬已经AC.
2. “超市”可以选择用set拿下80分后再考虑优化(实测泉州一中的测评机可以直接AC)
3. Ernd为应用题,请自行思考
4. “甘核平”由于数据出现异常,现暂时无法测评,等数据修复后会通知
5. “收集雪花”为应用题,哈希表只是解题工具,算法需要自己设计。
6. “好元素”为应用题,同上。

应用题可以暂时先不做,模板题大家打一打,练练手

未参加训练计划时您不能查看题目详情。

章节 1. 基础模板题

开放

题目 递交 % AC 难度
门票 RP+97 76 4 9
1. 超市 RP+95 26 23 7

章节 2. 最初的进阶

开放

题目 递交 % AC 难度
Ernd(ernd) RP+96 67 7 9
甘核平 RP+98 52 4 9

章节 3. 实战提高组

开放

题目 递交 % AC 难度
好元素 RP+97 50 6 9
收集雪花 RP+93 32 25 7
 
参加人数
20
创建人