# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
149139 | ummm (#200) | Crosses on the Grid (FXCUP4_cross) | C++17 | 141 ms | 8812 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
/* cerberus97 - Hanit Banga */
#include "cross.h"
#include <iostream>
#include <iomanip>
#include <cassert>
#include <cmath>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <map>
#include <set>
#include <queue>
#include <stack>
#include <vector>
#include <algorithm>
using namespace std;
#define pb push_back
#define fast_cin() ios_base::sync_with_stdio(false); cin.tie(NULL)
typedef long long ll;
typedef long double ld;
typedef pair <int, int> pii;
typedef pair <ll, ll> pll;
const ll inf = 1e18 + 42;
ll SelectCross(int K, std::vector<int> I, std::vector<int> O) {
int N = I.size();
vector<pll> C(N);
for (int i = 0; i < N; ++i) {
C[i] = {I[i], O[i]};
}
sort(C.begin(), C.end(), greater<pll>());
priority_queue<ll, vector<ll>, greater<ll>> q;
ll best = 0;
for (int i = 0; i < N; ++i) {
q.push(C[i].second);
if (q.size() > K) {
q.pop();
}
if (i >= K - 1) {
best = max(best, C[i].first * (2 * q.top() - C[i].first));
}
}
return best;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |