编号 | 题目 | 状态 | 分数 | 总时间 | 内存 | 代码 / 答案文件 | 提交者 | 提交时间 |
---|---|---|---|---|---|---|---|---|
#10891 | #1002. B. 说服合伙人 | Compile Error | 0 | 0 ms | 0 K | C++ / 1.7 K | qushaoru202 | 2019-07-04 20:12:56 |
#include <iostream>
#include <stack>
#include <vector>
#include <list>
#include <math.h>
#include <queue>
#include <set>
using namespace std;
class cyy {
public:
int a;
int b;
public:
cyy(int i_a, int i_b) : a(i_a), b(i_b) {}
bool operator<(const cyy &i_cyy) const { return (a + b) < (i_cyy.a + i_cyy.b); }
};
class csf {
public:
int a;
int b;
public:
csf(int i_a, int i_b) : a(i_a), b(i_b) {}
bool operator<(const csf &i_cyy) const {
if (a < i_cyy.a)
return true;
else if (a > i_cyy.a)
return false;
else
return b < i_cyy.b;
}
};
class card {
public:
int a;
int b;
card(int i_a, int i_b) : a(i_a), b(i_b) {}
bool operator<(const card &i_cyy) const {
if (a < i_cyy.a)
return true;
else if (a > i_cyy.a)
return false;
else
return b < i_cyy.b;
}
};
/*pq.push(2); cout<<pq.top()<<endl; pq.pop();*/
int main() {
int num;
int get_scores = 0;
int a, b;
set<card> search_tree;
search_tree.clear();
priority_queue<cyy, vector<cyy>> queue_cyy;
priority_queue<csf, vector<csf>> queue_csf;
cin >> num;
for (int i = 0; i < num; i++) {
cin >> a >> b;
queue_cyy.push(cyy(a, b));
queue_csf.push(csf(a, b));
}
for (int i = 0; i < num; i++) {
if (i % 2 == 0) {
csf tmp = queue_csf.top();
queue_csf.pop();
while (search_tree.find(card(tmp.a, tmp.b)) != search_tree.end()) {
tmp = queue_csf.top();
queue_csf.pop();
}
} else {
cyy tmp = queue_cyy.top();
queue_csf.pop();
while (search_tree.find(card(tmp.a, tmp.b)) != search_tree.end()) {
tmp = queue_cyy.top();
queue_csf.pop();
}
get_scores += tmp.b;
}
}
cout << get_scores;
// cin.get();
return 0;
}
编译信息
/sandbox/1/a.cpp: In function 'int main()':
/sandbox/1/a.cpp:73:33: error: '>>' should be '> >' within a nested template argument list
priority_queue< cyy, vector<cyy>> queue_cyy;
^~
> >
/sandbox/1/a.cpp:74:33: error: '>>' should be '> >' within a nested template argument list
priority_queue< csf, vector<csf>> queue_csf;
^~
> >