solution
- 测试点3超时:命令为3时,用unordered_map而非map,否则会超时
#include<iostream>
#include<string>
#include<algorithm>
#include<unordered_map>
using namespace std;
const int maxn = 1e4 + 10;
struct stu{
string id;
int score;
friend bool operator < (stu &s1, stu &s2){
if(s1.score == s2.score) return s1.id < s2.id;
return s1.score > s2.score;
}
}stus[maxn], temp[maxn];
int main(){
int n, m, com, cnt, sum;
string coms;
cin >> n >> m;
for(int i = 0; i < n; i++){
cin >> stus[i].id >> stus[i].score;
}
for(int j = 1; j <= m; j++){
cnt = sum = 0;
cin >> com >> coms;
cout << "Case " << j << ": " << com << " " << coms << endl;
if(com == 1){
for(int i = 0; i < n; i