이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "cross.h"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
long long SelectCross(int k, std::vector<int> a, std::vector<int> b) {
vector<pair<int,int> > x;
multiset<int> r;
for(int i = 0; i < (int)a.size(); i++){
x.push_back({a[i], b[i]});
}
sort(x.begin(), x.end());
reverse(x.begin(), x.end());
ll ans = 0;
multiset<int> bb;
for(pair<int,int> p : x){
bb.insert(p.second);
while((int)bb.size() > k) bb.erase(bb.begin());
if((int)bb.size() == k){
ll A = p.first;
ll B = *bb.begin();
ans = max(ans, 2 * A * B - A * A);
}
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |