# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
771275 | MilosMilutinovic | Hamburg Steak (JOI20_hamburg) | C++14 | 258 ms | 20732 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.
#include <bits/stdc++.h>
using namespace std;
const int N = 2e5 + 10;
int n, k, l[N], d[N], r[N], u[N];
vector<int> sweep_line(int* a, int* b) {
vector<array<int, 3>> ev;
for (int i = 1; i <= n; i++) {
ev.push_back({a[i], 0, i});
ev.push_back({b[i], 1, i});
}
sort(ev.begin(), ev.end());
set<int> st;
int bal = 0;
vector<int> res;
for (auto& p : ev) {
if (p[1] == 0) {
bal += 1;
st.insert(p[2]);
} else {
bal -= 1;
if (st.find(p[2]) != st.end()) {
res.push_back(p[0]);
st.clear();
}
}
}
return res;
}
int main() {
scanf("%d%d", &n, &k);
for (int i = 1; i <= n; i++) {
scanf("%d%d%d%d", &l[i], &d[i], &r[i], &u[i]);
}
vector<int> xs = sweep_line(l, r);
vector<int> ys = sweep_line(d, u);
printf("%d %d\n", xs[0], ys[0]);
}
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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |