Submission #548758

#TimeUsernameProblemLanguageResultExecution timeMemory
548758usukhbaatarLightning Rod (NOI18_lightningrod)C++14
100 / 100
745 ms79688 KiB
#include <stack> #include <cstdio> using namespace std; stack<pair<int, int>> s; void fastscan(int &a) { a = 0; char c = getchar(); for (; (c>47 && c<58); c=getchar()) a = a *10 + c - 48; } int main() { int n, x, y; scanf("%d\n", &n); for (int i = 0; i < n; i++) { fastscan(x); fastscan(y); int l = x - y; int r = x + y; if (!s.empty()) { if (s.top().first <= l && r <= s.top().second) continue; } while (!s.empty() && l <= s.top().first && s.top().second <= r) s.pop(); s.push({l, r}); } printf("%d\n", s.size()); }

Compilation message (stderr)

lightningrod.cpp: In function 'int main()':
lightningrod.cpp:29:11: warning: format '%d' expects argument of type 'int', but argument 2 has type 'std::stack<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wformat=]
   29 |  printf("%d\n", s.size());
      |          ~^     ~~~~~~~~
      |           |           |
      |           int         std::stack<std::pair<int, int> >::size_type {aka long unsigned int}
      |          %ld
lightningrod.cpp:17:7: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   17 |  scanf("%d\n", &n);
      |  ~~~~~^~~~~~~~~~~~
#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...