Submission #1010650

# Submission time Handle Problem Language Result Execution time Memory
1010650 2024-06-29T09:07:33 Z Beerus13 Jobs (BOI24_jobs) C++14
11 / 100
87 ms 29268 KB
#include<bits/stdc++.h>
using namespace std;
#define FOR(i, a, b)  for(int i = (a), _b = (b); i <= _b; ++i)
#define FORD(i, b, a) for(int i = (b), _a = (a); i >= _a; --i)
#define REP(i, a, b)  for(int i = (a), _b = (b); i < _b;  ++i)
#define REPD(i, b, a) for(int i = (b), _a = (a); i > _a;  --i)
#define MASK(i) (1LL << (i))
#define BIT(mask, i) (((mask) >> (i)) & 1)
#define __builtin_popcount __builtin_popcountll
#define all(val) val.begin(), val.end()
#define ll long long
#define ull unsigned long long
#define pii pair<int, int>
#define pll pair<ll, ll>
#define fi first
#define se second

mt19937_64 rng(chrono::high_resolution_clock::now().time_since_epoch().count());
ll Rand(ll l, ll r) {return l + rng() % (r - l + 1);}

template<class X, class Y>
    bool minimize(X &x, const Y &y) {
        if (x > y) {
            x = y;
            return true;
        } else return false;
    }
template<class X, class Y>
    bool maximize(X &x, const Y &y) {
        if (x < y) {
            x = y;
            return true;
        } else return false;
    }
template<class T>
    T Abs(const T &x) {
        return (x < 0 ? -x : x);
    }

const int N = 3e5 + 5;

int n, x[N];
ll s;
vector<int> g[N];

void sub1() {
    if(s < 3e14) return;
    function<ll(int)> dfs = [&](int u) {
        ll sum = x[u];
        for(int v : g[u]) {
            sum += dfs(v);
        }
        if(sum < 0) sum = 0;
        return sum;
    };
    cout << dfs(0) << '\n';
    exit(0);
}

void process() {
    cin >> n >> s;
    FOR(i, 1, n) {
        int p;
        cin >> x[i] >> p;
        g[p].push_back(i);
    }
    sub1();
}

signed main() {
    if(fopen("test.inp","r")) {
        freopen("test.inp","r",stdin);
        freopen("test.out","w",stdout);
    }
    ios::sync_with_stdio(0);
    cin.tie(0); cout.tie(0);
    int ntests = 1;
    // cin >> ntests;
    while(ntests--) process();
    return 0;
}

Compilation message

Main.cpp: In function 'int main()':
Main.cpp:72:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   72 |         freopen("test.inp","r",stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
Main.cpp:73:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   73 |         freopen("test.out","w",stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 83 ms 20820 KB Output is correct
2 Correct 70 ms 19344 KB Output is correct
3 Correct 70 ms 18624 KB Output is correct
4 Correct 58 ms 26704 KB Output is correct
5 Correct 58 ms 29268 KB Output is correct
6 Correct 45 ms 16024 KB Output is correct
7 Correct 80 ms 19548 KB Output is correct
8 Correct 87 ms 19532 KB Output is correct
9 Correct 50 ms 27108 KB Output is correct
10 Correct 55 ms 28748 KB Output is correct
11 Correct 79 ms 20536 KB Output is correct
12 Correct 59 ms 18256 KB Output is correct
13 Correct 71 ms 20632 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 7260 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 7260 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 7260 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 83 ms 20820 KB Output is correct
2 Correct 70 ms 19344 KB Output is correct
3 Correct 70 ms 18624 KB Output is correct
4 Correct 58 ms 26704 KB Output is correct
5 Correct 58 ms 29268 KB Output is correct
6 Correct 45 ms 16024 KB Output is correct
7 Correct 80 ms 19548 KB Output is correct
8 Correct 87 ms 19532 KB Output is correct
9 Correct 50 ms 27108 KB Output is correct
10 Correct 55 ms 28748 KB Output is correct
11 Correct 79 ms 20536 KB Output is correct
12 Correct 59 ms 18256 KB Output is correct
13 Correct 71 ms 20632 KB Output is correct
14 Incorrect 3 ms 7260 KB Output isn't correct
15 Halted 0 ms 0 KB -