set
hi_just_do_it
向上吧少年!
展开
-
ACM-ICPC国际大学生程序设计竞赛北京赛区(2016)网络赛 - C A Simple Job (模拟)(multiset)
map,set 这些STL的数据结构函数还是很强大的。这道题只要把符合格式的词组提取出来,存进SET里面,最后count下重复最多的词组就好了,set已经安字典序帮你排好了。原创 2016-09-25 10:44:45 · 709 阅读 · 0 评论 -
Canada Cup 2016 D. Contest Balloons
这道题不难,一些细节处理好了就可以了。主要是把气球数大于自己的插入到set里面,每次更新最小的size就好了。要注意数据要开long long,还有set里面数据的处理。#includeusing namespace std;const int maxn = 3e5+5;multiset ranks;typedef pair pii;pii num[maxn];bool原创 2016-10-24 13:44:34 · 222 阅读 · 0 评论 -
Codeforces Round #388 (Div. 2) D. Leaving Auction
这道题主要是运用stl和二分,主要是set的运用可以练一下std。先用vector存每个人的出价,再用一个数组和set存每个人的最高价,最后对于每一个q,把不在的人从set 里面erase掉,结束后再加进去。erase掉不在的人后,取出出价最高的两个人(set里面的最后两个人),找出价第二高的在最高的人的位置+1,就是出价最高的。原创 2016-12-22 09:11:16 · 371 阅读 · 0 评论 -
2017 Multi-University Training Contest - Team 3 1003(hdu 6058) Kanade's sum(链表)(set)
题意: 给你一个全排列,要你求这个序列的所有区间的第k大的和题解:对于每个数字计算贡献值,对于a[i],求区间中第k大的数字是a[i]的数量。 那么我们就需要维护a[i]左边和右边的k个比a[i]大的数字的下标。 这时候需要用到set来找左右边第一个比a[i]大的数字下标,然后用链表连起来。我们从小到大遍历,那么对于当前数字只需要找一次左右边比a[i]大的数字。 ps:直接用set里面的迭代器原创 2017-08-02 10:48:57 · 283 阅读 · 0 评论