# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
518701 | Everule | Game (IOI14_game) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
//#include "game.h"
using namespace std;
using ll = long long;
vector<vector<int>> g;
vector<bool> vis;
int n;
void initialize(int _n) {
n = _n;
g.resize(n, vector<int>(n, 1));
}
int hasEdge(int u, int v) {
g[u][v] = 0;
vis.assign(n, 0);
dfs(0);
return g[u][v] = (accumulate(vis.begin(), vis.end(), 0) != n);
}
void dfs(int u){
vis[u] = 1;
for(int v=0;v<n;v++){
if(g[u][v] && !vis[v]) dfs(v);
}
}