Submission #884395

#TimeUsernameProblemLanguageResultExecution timeMemory
884395abcvuitunggioToy Train (IOI17_train)C++17
5 / 100
219 ms262144 KiB
#include "train.h"
#include <bits/stdc++.h>
using namespace std;
vector <int> ke[5001],ke2[5001],ke3[5001],d,A,R;
int n,m,vis[5001],p[5001],sz[5001],ch[5001];
stack <int> st;
queue <int> q;
int f(int u){
    if (d[u]!=-1)
        return d[u];
    if (ch[u]&&A[u]==R[u])
        return d[u]=A[u];
    for (int v:ke[u])
        if (v!=u)
            return d[u]=f(v);
    return d[u]=A[u]^1;
}
vector <int> who_wins(vector <int> a, vector <int> r, vector <int> u, vector <int> v){
    A=a,R=r,n=a.size(),m=u.size();
    for (int i=0;i<m;i++){
        if (u[i]==v[i])
            ch[u[i]]=1;
        ke[u[i]].push_back(v[i]);
    }
    d.assign(n,-1);
    for (int i=0;i<n;i++)
        d[i]=f(i);
    return d;
}
#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...