#include <bits/stdc++.h>
#include "game.h"
using namespace std;
int const MAX=1505;
bool vecF[MAX][MAX];
int candT[MAX];
int muchie;
bool activ[MAX];
int nodes;
void initialize(int n){
nodes=n;
int i,j;
for(i=0;i<n;++i)
for(j=0;j<n;++j)
if(i!=j)
vecF[i][j]=1;
}
int hasEdge(int u, int v){
++muchie;
vecF[u][v]=vecF[v][u]=0;
int i;
if(muchie==1){
activ[u]=activ[v]=1;
for(i=0;i<nodes;++i)
if(vecF[u][i])
++candT[i];
for(i=0;i<nodes;++i)
if(vecF[v][i])
++candT[i];
return 1;
}
if(activ[u] || activ[v]){
if(activ[v])
swap(u,v);
--candT[v];
if(candT[v]==0){
activ[v]=1;
for(i=0;i<nodes;++i)
if(vecF[v][i])
++candT[i];
return 1;
}
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |