Submission #743969

#TimeUsernameProblemLanguageResultExecution timeMemory
743969vjudge1Lightning Rod (NOI18_lightningrod)C++17
0 / 100
2060 ms35208 KiB
#include<bits/stdc++.h> using namespace std; struct point { int x,y; }; int n; vector<point> vec; int cnt = 0; int main() { // ios_base::sync_with_stdio(0); cin.tie(0); cin >> n; stack<point> st; for(int i=0;i<n;++i) { int a,b; cin >> a >> b; // cout << '\n'; if(!st.empty() && b > st.top().y && b-st.top().y >= abs(a-st.top().x)) { // cout << "pop " << st.top().x << " " << st.top().y << '\n'; st.pop(); } else if(!st.empty() && st.top().y > b && abs(st.top().x-a) <= st.top().y-b) continue; else if(st.empty() || abs(a-st.top().x) > st.top().y-b) { st.push({a,b}); // cout << "add " << a << " " << b << '\n'; } } cout << st.size(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...