#include<queue>
#include<iostream>
#include<vector>
#include<stack>
#include<deque>
#include<set>
#include<map>
#include<string>
#include<bitset>
using namespace std;
int main(){
vector<int> a(100,0);
vector<int> b[10];//10个
//a.size();
//a.empty();通用接口
a.clear();
a.push_back(' ');
a.pop_back();
a.front(); a.back();
//a.begin(); a.end();
for(int i=0; i<a.size(); i++){
cout<<a[i]; }
for(auto i=a.begin(); i<a.end(); i++){
cout<<*i; }
for(auto ele: a){//c++11标准
cout<<ele; }
pair<int,string> p[10];
p[0].first; p[0].second;
//支持比较大小,以字典序;
p[1] = make_pair( 10, "值");
p[2] = {10, "a"};
pair<int,pair<int,int>> pp;
pp.second.first = 1;
string str="abcde";
str.clear();
str.length(); str.size(); str.empty();
str ="abc";
//str.substr(1,2);
//substr(起始位置, 长度)
printf("%s", str);//乱码
cout<<str;
printf("%s", str.c_str());//返回首地址
queue<int> que;
que = queue<int>();//清空
que.push(1);
que.pop();
que.front(); que.back();
priority_queue<int,vector<int>,greater<int>> pque;//小根堆,默认大根队。
pque.push(1); pque.pop();
pque.top();
deque<int> dq;//慢
dq.size(); dq.empty();
dq.front(); dq.back();
dq.push_front(1); dq.push_back(1);
dq.pop_front(); dq.pop_back();
dq.clear();
stack<int> stk;
//
// set, multiset, map, multimap//
// size(), empty(), clear()
set<int> s;
s.insert(1);
s.find(1);
s.count(1);
s.erase(1);//删除所有x;
s.lower_bound(1);//返回>=x最小的数的迭代器;
s.upper_bound(1);//返回>x 最小的数的迭代器;
//unordered_set,unordered_map,unordered_multiset,unorder_multimap
//不支持 lower_bound(), upper_bound();
bitset<10000> bs;
}