#include "friend.h"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int INF = numeric_limits<int>::max() / 2;
// Find out best sample
int findSample(int n,int confidence[],int host[],int protocol[]){
// int ans=0;
// for (int i=0;i<n;++i){
// ans+=confidence[i];
// }
// return ans;
// int ans=0;
// for (int i=0;i<n;++i){
// if (confidence[i] > ans) {
// ans = confidence[i];
// }
// }
// return ans;
// vector<vector<int>> adj(n,vector<int>{});
// for (int i=1;i<n;++i){
// if (protocol[i] == 0 || protocol[i] == 2) {
// adj[i].push_back(host[i]);
// }
// if (protocol[i] == 1 || protocol[i] == 2) {
// adj[i].append_range(adj[host[i]]);
// }
// }
int out = 0;
for (int i=n-1;i>0;--i){
if (protocol[i] == 0) {
out+=confidence[i];
confidence[host[i]] -= confidence[i];
if (confidence[host[i]] < 0) {
confidence[host[i]] = 0;
}
}
if (protocol[i] == 1) {
confidence[host[i]] += confidence[i];
}
if (protocol[i] == 2) {
confidence[host[i]] = max(confidence[i],confidence[host[i]]);
}
}
out += confidence[0];
return out;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |