STL好坑
关于multiset,有如下结论:
1 multiset<int> s; 2 s.insert(3); 3 s.insert(3); 4 cout<<s.count(3);//结果输出2 5 s.erase(3); 6 cout<<s.count(3);//结果输出0
因此multiset模拟时应注意有几个。数据量小可以用哈希数组。
关于map,有如下结论:
1 map<int,int> mp; 2 int main(){ 3 mp[-1]=1; 4 mp.clear(); 5 cout<<mp[-1];//有的环境下,并不可靠 6 }
这说明map的clear是个坑,可以考虑用map.erase(map.begin(),map.end())。