Playrix Codescapes Cup (Codeforces Round #413, rated, Div. 1 + Div. 2) B. T-shirt buying

来源:互联网 发布:网络通信协议图 编辑:程序博客网 时间:2024/05/21 06:41

直接stl水过。用set。做完第一个题用了一个半小时多,第二个题用了十几分钟,然后两个小时基本就没了,也没再看后边的题目。

#include <iostream>#include <algorithm>#include <set>using namespace std;const int MAXN = 200010;int num[MAXN];set<int> sets[4];int main(){    ios::sync_with_stdio(false);    int n,col,m,nm;    cin >> n;    for(int i = 1; i <= n; ++i)        cin >> num[i];    for(int i = 1; i <= n; ++i)    {        cin >> col;        sets[col].insert(num[i]);    }    for(int i = 1; i <= n; ++i)    {        cin >> col;        sets[col].insert(num[i]);    }    cin >> m;    for(int i = 0; i < m; ++i)    {        cin >> col;        if(!sets[col].empty())        {            nm = *(sets[col].begin());            cout << nm << endl;            sets[1].erase(nm);            sets[2].erase(nm);            sets[3].erase(nm);        }        else            cout << -1 << endl;    }    return 0;}
0 0