Submission #598011

# Submission time Handle Problem Language Result Execution time Memory
598011 2022-07-17T10:22:19 Z OttoTheDino Chase (CEOI17_chase) C++17
40 / 100
308 ms 524288 KB
#include <bits/stdc++.h>
using namespace std;

#define rep(i,s,e)                  for (ll i = s; i <= e; ++i)
#define rrep(i,s,e)                 for (ll i = s; i >= e; --i)
#define pb                          push_back
#define pf                          push_front
#define fi                          first
#define se                          second
#define all(a)                      a.begin(), a.end()
#define len(a)                      (ll)a.size()
typedef long long ll;
typedef pair<ll, ll> ii;
typedef pair<ll, ll> pll;
typedef vector<ii> vii;
typedef vector<ll> vi;
typedef vector<double> vd;
typedef vector<string> vs;
typedef vector<ll> vll;

const ll mx = 1e5, mxv = 100;
ll p[mx+1], s[mx+1];
vi adj[mx+1];
map<int,ll> dp[mx+1][mxv+1];

ll dfs (int u, int par, int cnt)  {
    if (cnt==0) return 0;

    if (dp[u][cnt].find(par)!=dp[u][cnt].end()) return dp[u][cnt][par];

    dp[u][cnt][par] = s[u]-p[par];

    for (int v : adj[u]) {
        if (v==par) continue;
        dp[u][cnt][par] = max(dp[u][cnt][par], max(s[u]-p[par]+dfs(v,u,cnt-1), dfs(v,u,cnt))); 
    }

    return dp[u][cnt][par];
}

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

    ll n, l; cin >> n >> l;

    rep (i,1,n) cin >> p[i];

    rep (i,1,n-1) {
        ll u, v; cin >> u >> v;
        adj[u].pb(v);
        adj[v].pb(u);
    }

    rep (i,1,n) for (int v : adj[i]) s[i] += p[v];

    ll ans = 0;
    rep (i,1,n) {
        ans = max(ans, dfs (i, 0, l));
    }

    cout << ans << "\n";

    return 0;
}

# Verdict Execution time Memory Grader output
1 Correct 205 ms 476992 KB Output is correct
2 Correct 204 ms 476960 KB Output is correct
3 Correct 206 ms 477040 KB Output is correct
4 Correct 208 ms 477132 KB Output is correct
5 Correct 202 ms 477004 KB Output is correct
6 Correct 208 ms 477052 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 205 ms 476992 KB Output is correct
2 Correct 204 ms 476960 KB Output is correct
3 Correct 206 ms 477040 KB Output is correct
4 Correct 208 ms 477132 KB Output is correct
5 Correct 202 ms 477004 KB Output is correct
6 Correct 208 ms 477052 KB Output is correct
7 Correct 239 ms 486172 KB Output is correct
8 Correct 203 ms 477700 KB Output is correct
9 Correct 308 ms 477476 KB Output is correct
10 Correct 224 ms 478508 KB Output is correct
11 Correct 206 ms 478436 KB Output is correct
12 Correct 210 ms 477928 KB Output is correct
# Verdict Execution time Memory Grader output
1 Runtime error 291 ms 524288 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 205 ms 476992 KB Output is correct
2 Correct 204 ms 476960 KB Output is correct
3 Correct 206 ms 477040 KB Output is correct
4 Correct 208 ms 477132 KB Output is correct
5 Correct 202 ms 477004 KB Output is correct
6 Correct 208 ms 477052 KB Output is correct
7 Correct 239 ms 486172 KB Output is correct
8 Correct 203 ms 477700 KB Output is correct
9 Correct 308 ms 477476 KB Output is correct
10 Correct 224 ms 478508 KB Output is correct
11 Correct 206 ms 478436 KB Output is correct
12 Correct 210 ms 477928 KB Output is correct
13 Runtime error 291 ms 524288 KB Execution killed with signal 9
14 Halted 0 ms 0 KB -