C++stl 容器
文章平均质量分 70
1
hesorchen
这个作者很懒,什么都没留下…
展开
-
拓扑排序用bitset处理相同排名的集合
前言拓扑排序可以在有向无环图中以偏序求出全序,但是在一些图中,有些结点的rank是一样高的,(除非题目有特殊说明,编号小的rank高等情况),这样是不能求出正确的rank的。这时候,我们可以加入bitset,用bitset处理相同rank的结点集。bitset使用头文件 bitsetbitset类似于一个bool类型的数组,存放着01。可以在定义的时候进行初始化操作,可以用下标进行访问,也是从0开始,并且从默认最右边的一位为[0](结合二进制数,其实很人性化),定义、访问及初始化方法如下:int原创 2020-08-24 20:31:51 · 3502 阅读 · 0 评论 -
牛客寒假集训营 子段异或
题目传送门思维题,如果[1,a]区间的异或和为x,[1,b]区间的异或和也为x,那么(a,b]区间的异或和为0。这样我们只需求异或前缀和就行了。map<ll, ll> mp;int main(){ ll n; cin >> n; ll sum = 0; ll ans = 0; mp[0] = ...原创 2020-04-01 13:33:49 · 5165 阅读 · 0 评论 -
map中 指向键和值的方法( . 与 -> 的区别)
一个迭代器it,要输出it指向的map的值的方法是cout<<it->second;,今天有个人问我为什么不是it.second。其实,我刚学map的时候就纠结了很久,刚刚才弄明白。map可以看成是一个结构体,it是直接指向整个结构体的,因此(*it).second等价于it->second。...原创 2020-03-18 09:24:55 · 5699 阅读 · 0 评论 -
组合数+2的幂次方
题目大意:给你n个数,问你有多少种可能使两个数加起来是2的幂次方由于n的范围是1e5,暴力组合判断肯定会T,于是我们用map容器,记录的数出现的次数。//https://blog.csdn.net/hesorchen#include <bits/stdc++.h>using namespace std;#define ll long long#define mem(a...原创 2020-02-14 15:45:29 · 6161 阅读 · 0 评论 -
c++容器和迭代器(转载)
转载:传送门转载 2020-01-09 20:51:14 · 5142 阅读 · 0 评论