Submission #369124

#TimeUsernameProblemLanguageResultExecution timeMemory
369124NachoLibreFriend (IOI14_friend)C++17
19 / 100
2 ms492 KiB
#include <bits/stdc++.h>
using namespace std;
#define sz(a) ((int)(a).size())
typedef vector<int> vint;
typedef vector<vint> vvint;
#ifndef wambule
#include "friend.h"
#else
#endif

const int N = 1003;
int dp[N][2], c[N];
vector<int> v[N];

void D(int x) {
	dp[x][0] = 0;
	dp[x][1] = c[x];
	for(int y : v[x]) {
		D(y);
		dp[x][0] += max(dp[y][0], dp[y][1]);
		dp[x][1] += dp[y][0];
	}
}

int findSample(int n, int cfd[], int hst[], int ptc[]) {
	int dr = 0;
	for(int i = 0; i < n; ++i) {
		c[i] = cfd[i];
	}
	for(int i = 1; i < n; ++i) {
		v[hst[i]].push_back(i);
	}
	D(0);
	dr = max(dp[0][0], dp[0][1]);
	return dr;
}

#ifdef wambule
int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);
	return 0;
}
#endif
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...