Submission #997084

# Submission time Handle Problem Language Result Execution time Memory
997084 2024-06-11T17:21:10 Z LOLOLO Fuel Station (NOI20_fuelstation) C++17
13 / 100
286 ms 30664 KB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
 
#define           f     first
#define           s     second
#define           pb    push_back
#define           ep    emplace
#define           eb    emplace_back
#define           lb    lower_bound
#define           ub    upper_bound
#define       all(x)    x.begin(), x.end()
#define      rall(x)    x.rbegin(), x.rend()
#define   uniquev(v)    sort(all(v)), (v).resize(unique(all(v)) - (v).begin())
#define     mem(f,x)    memset(f , x , sizeof(f))
#define        sz(x)    (ll)(x).size()
#define  __lcm(a, b)    (1ll * ((a) / __gcd((a), (b))) * (b))
#define          mxx    *max_element
#define          mnn    *min_element
#define    cntbit(x)    __builtin_popcountll(x)
#define       len(x)    (int)(x.length())
 
const int N = 3e5 + 10;

vector < vector <int>> v;

bool check(int r) {
    int l = 0, pr = 0;
    for (auto x : v) {
        int d = x[0] - pr;
        pr = x[0];
        r -= d;
        l -= d;
        if (r < 0)
            return 0;

        l = max(l, 0);
        r = min(r + x[1], x[2] + x[1]);
    }

    return l <= r;
}

int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);

    int n, d;
    cin >> n >> d;

    for (int i = 0; i < n; i++) {
        int x, a, b;
        cin >> x >> a >> b;
        v.pb({x, a, b});
    }

    v.pb({d, 0, 0});
    sort(all(v));

    int l = 1, r = d, m, ans;
    while (l <= r) {
        m = (l + r) / 2;
        if (check(m)) {
            ans = m;
            r = m - 1;
        } else {
            l = m + 1;
        }
    }

    cout << ans << '\n';
    return 0;

}
 

Compilation message

FuelStation.cpp: In function 'int main()':
FuelStation.cpp:72:20: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
   72 |     cout << ans << '\n';
      |                    ^~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Incorrect 0 ms 348 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 286 ms 29428 KB Output is correct
2 Correct 243 ms 30024 KB Output is correct
3 Correct 217 ms 30332 KB Output is correct
4 Correct 241 ms 28704 KB Output is correct
5 Correct 225 ms 30664 KB Output is correct
6 Correct 209 ms 28544 KB Output is correct
7 Correct 215 ms 28660 KB Output is correct
8 Correct 212 ms 29160 KB Output is correct
9 Correct 241 ms 29428 KB Output is correct
10 Correct 199 ms 29944 KB Output is correct
11 Correct 224 ms 28236 KB Output is correct
12 Correct 223 ms 30388 KB Output is correct
13 Correct 204 ms 28668 KB Output is correct
14 Correct 209 ms 28644 KB Output is correct
15 Correct 246 ms 28948 KB Output is correct
16 Correct 248 ms 29844 KB Output is correct
17 Correct 225 ms 29428 KB Output is correct
18 Correct 226 ms 30024 KB Output is correct
19 Correct 209 ms 29728 KB Output is correct
20 Correct 239 ms 29428 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Incorrect 0 ms 348 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Incorrect 0 ms 348 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Incorrect 0 ms 348 KB Output isn't correct
3 Halted 0 ms 0 KB -