# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
701885 | 2023-02-22T08:58:44 Z | lto5 | Lightning Rod (NOI18_lightningrod) | C++14 | 1243 ms | 1528 KB |
#include <bits/stdc++.h> using namespace std; void debug_out() { cerr << '\n'; } template <typename Head, typename... Tail> void debug_out(Head H, Tail... T) { cerr << " " << H; debug_out(T...); } #define debug(...) cerr << "[" << #__VA_ARGS__ << "]:", debug_out(__VA_ARGS__) namespace sub1 { void solve(int n) { vector<pair<int, int>> vt; stack<int> st; while (n--) { int x, y; cin >> x >> y; vt.emplace_back(x + y, y - x); } sort(vt.begin(), vt.end()); for (auto [x, y] : vt) { while (!st.empty() && st.top() <= y) { st.pop(); } st.push(y); } // while (!st.empty()) { // debug(st.top()); // st.pop(); // } cout << st.size(); } } // namespace sub1 namespace sub2 { const int N = 1e7 + 5; pair<int, int> st[N]; void solve(int n) { int top = 0; st[0].second = -2e9; while (n--) { int x, y; cin >> x >> y; int nx = x + y; int ny = y - x; x = nx, y = ny; // debug(x, y); while (top > 0 && st[top].first <= x && st[top].second >= y) { top--; } // debug(top); // if (top > 0 && st[top].second >= y) { // continue; // } st[++top] = {x, y}; // debug('.', top); // st[++top] = {y, x}; // st[++top] = {x, max(y, st[top - 1].second)}; } cout << top; } } // namespace sub2 int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); #define task "a" if (fopen(task ".inp", "r")) { freopen(task ".inp", "r", stdin); freopen(task ".out", "w", stdout); } int n; cin >> n; // if (n <= 1e6) { // sub1::solve(n); // return 0; // } sub2::solve(n); return 0; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1243 ms | 1528 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | Output is correct |
2 | Incorrect | 0 ms | 212 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | Output is correct |
2 | Incorrect | 0 ms | 212 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | Output is correct |
2 | Incorrect | 0 ms | 212 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | Output is correct |
2 | Incorrect | 0 ms | 212 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1238 ms | 1324 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 1243 ms | 1528 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |