Submission #1192430

#TimeUsernameProblemLanguageResultExecution timeMemory
1192430GoBananas69Game (IOI14_game)C++20
0 / 100
0 ms328 KiB
#include <algorithm>
#include <array>
#include <bitset>
#include <cmath>
#include <iostream>
#include <queue>
#include <vector>

using namespace std;
typedef long long ll;

vector<vector<int>> adj;
vector<bool> vis, v;
vector<vector<int>> test;

void initialize(int n) {
    adj.resize(n);
    vis.resize(n, false);
}

void dfs(int u) {
    vis[u] = true;
    for (int &v : adj[u]) {
        if (vis[v])
            continue;
        dfs(v);
    }
}

bool hasEdge(int u, int v) {
    int n = adj.size();
    fill(vis.begin(), vis.end(), false);
    adj[u].push_back(v);
    dfs(0);
    for (int i = 0; i < n; ++i) {
        if (!vis[i]) {
            return true;
        }
    }
    adj[u].pop_back();
    return false;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...