Submission #1304345

#TimeUsernameProblemLanguageResultExecution timeMemory
1304345activedeltorreFriend (IOI14_friend)C++20
100 / 100
16 ms2184 KiB
#include "friend.h"

// Find out best sample
#include<iostream>
#include<vector>
using namespace std;
int p[100005];
int q[100005];
int findSample(int n,int confidence[],int host[],int protocol[])
{
    int maxval=0,sum=0,p1,q1;
    for(int i=0; i<n; i++)
    {
        p[i]=confidence[i];
    }
    for(int i=n-1;i>=1;i--)
    {
        if(protocol[i]==2)
        {
            p1=max(p[host[i]]+q[i],p[i]+q[host[i]]);
            q1=q[i]+q[host[i]];
            p[host[i]]=p1;
            q[host[i]]=q1;
        }
        else if(protocol[i]==1)
        {
            p1=max(p[host[i]]+p[i],max(p[i]+q[host[i]],p[host[i]]+q[i]));
            q1=q[i]+q[host[i]];
            p[host[i]]=p1;
            q[host[i]]=q1;
        }
        else
        {
            p1=p[host[i]]+q[i];
            q1=q[host[i]]+max(q[i],p[i]);
            p[host[i]]=p1;
            q[host[i]]=q1;
        }
    }
    return max(p[0],q[0]);
}
#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...