Submission #122469

# Submission time Handle Problem Language Result Execution time Memory
122469 2019-06-28T11:13:04 Z youngyojun Beads and wires (APIO14_beads) C++11
28 / 100
231 ms 5460 KB
#include <bits/stdc++.h>
#define eb emplace_back
#define sz(V) ((int)(V).size())
#define allv(V) ((V).begin()),((V).end())
#define upmax(a,b) (a)=max((a),(b))
#define INFLL (0x3f3f3f3f3f3f3f3fll)
using namespace std;
typedef long long ll;

const int MAXN = 200055;

ll D[MAXN], E[MAXN];

vector<int> G[MAXN];
int A[MAXN], B[MAXN], C[MAXN];

ll Ans;
int N;

void f(int i, int p, int pe) {
	D[i] = 0; E[i] = -INFLL;
	for(int e : G[i]) {
		int v = A[e]^B[e]^i;
		if(v == p) continue;
		f(v, i, C[e]);
		upmax(E[i], -max(D[v], E[v]) + D[v] + C[e]);
		D[i] += max(D[v], E[v]);
	}
	E[i] += D[i] + pe;
}

int main() {
	ios::sync_with_stdio(false);

	cin >> N;
	for(int i = 1; i < N; i++) {
		cin >> A[i] >> B[i] >> C[i];
		G[A[i]].eb(i);
		G[B[i]].eb(i);
	}

	vector<int> O;
	for(int i = 1; i <= N; i++) O.eb(i);
	random_shuffle(allv(O));

	for(int t = 0; t < N && t <= 1000; t++) {
		int i = O[t];
		ll ret = 0;
		for(int e : G[i]) {
			int v = A[e]^B[e]^i;
			f(v, i, C[e]);
			ret += max(D[v], E[v]);
		}
		upmax(Ans, ret);
	}

	cout << Ans << endl;
	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 6 ms 4992 KB Output is correct
2 Correct 6 ms 4992 KB Output is correct
3 Correct 6 ms 4992 KB Output is correct
4 Correct 6 ms 5036 KB Output is correct
5 Correct 6 ms 5120 KB Output is correct
6 Correct 8 ms 4992 KB Output is correct
7 Correct 5 ms 4992 KB Output is correct
8 Correct 5 ms 4992 KB Output is correct
9 Correct 6 ms 4992 KB Output is correct
10 Correct 6 ms 5120 KB Output is correct
11 Correct 5 ms 5052 KB Output is correct
12 Correct 5 ms 4992 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 4992 KB Output is correct
2 Correct 6 ms 4992 KB Output is correct
3 Correct 6 ms 4992 KB Output is correct
4 Correct 6 ms 5036 KB Output is correct
5 Correct 6 ms 5120 KB Output is correct
6 Correct 8 ms 4992 KB Output is correct
7 Correct 5 ms 4992 KB Output is correct
8 Correct 5 ms 4992 KB Output is correct
9 Correct 6 ms 4992 KB Output is correct
10 Correct 6 ms 5120 KB Output is correct
11 Correct 5 ms 5052 KB Output is correct
12 Correct 5 ms 4992 KB Output is correct
13 Correct 6 ms 5120 KB Output is correct
14 Correct 6 ms 5120 KB Output is correct
15 Correct 6 ms 5120 KB Output is correct
16 Correct 6 ms 5120 KB Output is correct
17 Correct 8 ms 5120 KB Output is correct
18 Correct 6 ms 5120 KB Output is correct
19 Correct 6 ms 5120 KB Output is correct
20 Correct 6 ms 5120 KB Output is correct
21 Correct 6 ms 5120 KB Output is correct
22 Correct 6 ms 5120 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 4992 KB Output is correct
2 Correct 6 ms 4992 KB Output is correct
3 Correct 6 ms 4992 KB Output is correct
4 Correct 6 ms 5036 KB Output is correct
5 Correct 6 ms 5120 KB Output is correct
6 Correct 8 ms 4992 KB Output is correct
7 Correct 5 ms 4992 KB Output is correct
8 Correct 5 ms 4992 KB Output is correct
9 Correct 6 ms 4992 KB Output is correct
10 Correct 6 ms 5120 KB Output is correct
11 Correct 5 ms 5052 KB Output is correct
12 Correct 5 ms 4992 KB Output is correct
13 Correct 6 ms 5120 KB Output is correct
14 Correct 6 ms 5120 KB Output is correct
15 Correct 6 ms 5120 KB Output is correct
16 Correct 6 ms 5120 KB Output is correct
17 Correct 8 ms 5120 KB Output is correct
18 Correct 6 ms 5120 KB Output is correct
19 Correct 6 ms 5120 KB Output is correct
20 Correct 6 ms 5120 KB Output is correct
21 Correct 6 ms 5120 KB Output is correct
22 Correct 6 ms 5120 KB Output is correct
23 Incorrect 231 ms 5460 KB Output isn't correct
24 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 6 ms 4992 KB Output is correct
2 Correct 6 ms 4992 KB Output is correct
3 Correct 6 ms 4992 KB Output is correct
4 Correct 6 ms 5036 KB Output is correct
5 Correct 6 ms 5120 KB Output is correct
6 Correct 8 ms 4992 KB Output is correct
7 Correct 5 ms 4992 KB Output is correct
8 Correct 5 ms 4992 KB Output is correct
9 Correct 6 ms 4992 KB Output is correct
10 Correct 6 ms 5120 KB Output is correct
11 Correct 5 ms 5052 KB Output is correct
12 Correct 5 ms 4992 KB Output is correct
13 Correct 6 ms 5120 KB Output is correct
14 Correct 6 ms 5120 KB Output is correct
15 Correct 6 ms 5120 KB Output is correct
16 Correct 6 ms 5120 KB Output is correct
17 Correct 8 ms 5120 KB Output is correct
18 Correct 6 ms 5120 KB Output is correct
19 Correct 6 ms 5120 KB Output is correct
20 Correct 6 ms 5120 KB Output is correct
21 Correct 6 ms 5120 KB Output is correct
22 Correct 6 ms 5120 KB Output is correct
23 Incorrect 231 ms 5460 KB Output isn't correct
24 Halted 0 ms 0 KB -