#include <iostream>
#include <vector>
#include "game.h"
using namespace std;
int Nn, cnt[1505], blocked[1505][1505], seen[1505], cur = 1, ver;
vector<int> nei[1505];
void initialize(int N){
Nn = N;
for (int i=1;i<=N;i++)
for (int j=1;j<=N;j++)
if (i != j)
nei[i].push_back(j);
}
void dfs(int u){
seen[u] = cur, ver++;
for (int i : nei[u])
if (!blocked[i][u] and seen[i] != cur)
dfs(i);
}
int hasEdge(int u, int v){
u++;
v++;
blocked[u][v] = blocked[v][u] = 1;
cur++;
ver = 0;
dfs(1);
if (ver == Nn)
return 0;
blocked[u][v] = blocked[v][u] = 0;
return 1;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |