Submission #337255

# Submission time Handle Problem Language Result Execution time Memory
337255 2020-12-19T04:36:13 Z boykut Divide and conquer (IZhO14_divide) C++14
17 / 100
2 ms 384 KB
#include <bits/stdc++.h>

using namespace std;

struct gold {
   int x, g, e;
} a[100001], pr[100001];

signed main() {
   ios::sync_with_stdio(0);
   cin.tie(0);
   
   int n;
   cin >> n;
   
   for (int i = 1; i <= n; i++) {
      cin >> a[i].x >> a[i].g >> a[i].e;
      pr[i].g = pr[i - 1].g + a[i].g;
      pr[i].e = pr[i - 1].e + a[i].e;
   }
   
   sort (a + 1, a + 1 + n, [](gold a, gold b) -> bool {
      if (a.x != b.x) return a.x < b.x;
      if (a.e != b.e) return a.e > b.e;
      return a.g >= b.g;
   });
   
   int ans = INT_MIN;
   for (int left = 1; left <= n; left++) {
      for (int right = left; right <= n; right++) {
         if (a[right].x - a[left].x <= pr[right].e - pr[left - 1].e) {
            ans = max(ans, pr[right].g - pr[left - 1].g);
         }
      }
   }
   
   cout << ans << '\n';
   
   return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 0 ms 364 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 0 ms 364 KB Output is correct
5 Correct 0 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 0 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
11 Correct 1 ms 384 KB Output is correct
12 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 0 ms 364 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 0 ms 364 KB Output is correct
5 Correct 0 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 0 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
11 Correct 1 ms 384 KB Output is correct
12 Correct 1 ms 364 KB Output is correct
13 Correct 1 ms 364 KB Output is correct
14 Correct 1 ms 364 KB Output is correct
15 Correct 1 ms 364 KB Output is correct
16 Correct 1 ms 364 KB Output is correct
17 Incorrect 2 ms 364 KB Output isn't correct
18 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 0 ms 364 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 0 ms 364 KB Output is correct
5 Correct 0 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 0 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
11 Correct 1 ms 384 KB Output is correct
12 Correct 1 ms 364 KB Output is correct
13 Correct 1 ms 364 KB Output is correct
14 Correct 1 ms 364 KB Output is correct
15 Correct 1 ms 364 KB Output is correct
16 Correct 1 ms 364 KB Output is correct
17 Incorrect 2 ms 364 KB Output isn't correct
18 Halted 0 ms 0 KB -