Submission #548756

#TimeUsernameProblemLanguageResultExecution timeMemory
548756usukhbaatarLightning Rod (NOI18_lightningrod)C++14
0 / 100
416 ms264 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);
	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);
      |  ~~~~~^~~~~~~~~~
#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...