关于multiset中遇到的一个错误

敲了一下浙大复试题,表示鸭梨有点大,虽然最后都AC掉了,而且感觉没有任何算法上的难度(大概就CF div2 的第二题难度),但还是感觉到细节之类的问题很让人头疼,这种题目换在平时的练习赛,估计能被AK完,但作为一场比赛就有点玄乎了(心理鸭梨有点大)....两个小时就能AK走人的人确实得orz orz orz

不知是哪位大神说的,虽然题目不是很难,但是想要拿满分还是有点难度的。。。

题目解法顺便也贴一下吧:

第一题:

map存有哪些元素,并记录下相应的元素的个数,差不多就是这样:map[t]++;

最后枚举一遍即可。

如果会出现超时的情况,应该是用cout输出的缘故吧。


第二题:

唯一一题我觉得需要想一想才能做出来的题,刚开始拿到这题,不像其他三题那样直接来想法(即已从理论上AC了)。

在纸上摆弄了一会,最后发现可以用优先队列做,不过我嫌麻烦就用multiset做(这就是悲剧的开始 T T)

先对所有人进行三级排序,分别按照财富、年龄和姓名排,然后开一个vector<people>v[250];的队列,依次存进去;

当进行询问时,将询问区间内的年龄的第一个依次取出放入优先队列,再取出队列头的人并输出,然后看一下取出的人的年龄,再从取出的人的年龄所在的v

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值