Submission #161431

#TimeUsernameProblemLanguageResultExecution timeMemory
161431BertedLightning Rod (NOI18_lightningrod)C++14
76 / 100
2052 ms99904 KiB
#include <bits/stdc++.h> #define pii pair<int,int> #define fst first #define snd second #define getchar_unlocked getchar using namespace std; stack<pii> s; int n,a,b; inline int readInt() { int x = 0; char ch = getchar_unlocked(); while (ch < '0' || ch > '9') ch = getchar_unlocked(); while (ch >= '0' && ch <= '9'){ x = (x << 3) + (x << 1) + ch - '0'; ch = getchar_unlocked(); } return x; } int main() { n = readInt(); for (int i=0;i<n;i++) { a = readInt(); b = readInt(); if (s.empty()) {s.push({a,b});} else { if (a - s.top().fst > s.top().snd - b) { while (s.size()) { if (a - s.top().fst <= b - s.top().snd) {s.pop();} else {break;} } s.push({a,b}); } } //cout<<i<<" "<<s.size()<<"\n"; } printf("%d\n",(int)s.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...