Lowest Unique Price (第六届省赛)map

来源:互联网 发布:java 继承多个类 编辑:程序博客网 时间:2024/06/05 04:26
/*此题一定是一个大模拟map*/#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <map>using namespace std;int main(){    int t;    scanf("%d", &t);    while(t--){        map <int, int> s;        s.clear();        int n;        scanf("%d", &n);        char c[20];        int num;        for(int i = 0; i < n; i++){            getchar();            scanf("%s", c);//这里代码写多了后应该注意到这个细节如果按照 单个字符可能会错,按照字符串输入            if(c[0] == 'b'){                scanf("%d", &num);                s[num]++;            }            if(c[0] == 'c'){                scanf("%d", &num);                s[num]--;                if(s[num] == 0) s.erase(num);//这里注意每当一个为0从map中删除掉不然累加的元素太多一定会超时            }            if(c[0] == 'q'){                int flag = 0;                for(map <int, int> :: iterator it = s.begin(); it != s.end(); it++){                    if(it -> second == 1){                        cout << it -> first << endl;                        flag = 1;                        break;                    }                }                if(!flag) cout << "none" << endl;            }        }    }    return 0;}

0 0
原创粉丝点击