Aizu Online Judge(AOJ)の過去問から、その提出コードの解答例です。
・問題 "Multi-Set"
https://onlinejudge.u-aizu.ac.jp/problems/ITP2_7_D
僕が作成、提出したコードは、以下のとおりです。
Aizu Online Judge in C++ #ITP2_7_D : Multi-Set
/* Aizu Online Judge in C++ #ITP2_7_D : Multi-Set https://onlinejudge.u-aizu.ac.jp/problems/ITP2_7_D 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ int n; cin>>n; multiset<int> s; for(int i=0;i<n;i++){ int query,x; cin>>query>>x; if(query==0){ s.insert(x); cout<<s.size()<<endl; }else if(query==1){ cout<<s.count(x)<<endl; }else if(query==2){ s.erase(x); }else{ int y; cin>>y; auto a=s.lower_bound(x),b=s.upper_bound(y); for(auto j=a;j!=b;j++){ cout<<*j<<endl; } } } return 0; }
設問の出典は、プログラミング問題のオンライン採点システム「Aizu Online Judge(AOJ)」です。
http://judge.u-aizu.ac.jp/onlinejudge/