제출 #1203705

#제출 시각아이디문제언어결과실행 시간메모리
1203705madamadam3게임 (APIO22_game)C++17
0 / 100
0 ms408 KiB
#include "game.h"
#include <bits/stdc++.h>

using namespace std;

int n, k;
vector<vector<int>> adj;
bool has_cycle = false; // avoid re-computing answer if its already true

bool dfs(int u, set<int> &vis, int head) {
    bool does = false;
    vis.insert(u);

    for (auto &v : adj[u]) {
        if (v <= head && head < k) return true;
        if (vis.count(v)) continue;
        does = does || dfs(v, vis, head);
        if (does) break;
    }

    return does;
}

bool check() {
    // for (int i = 0; i < k; i++) {
    //     set<int> vis;
    //     if (dfs(i, vis, i)) return true;
    // }

    return false;
}

void init(int N, int K) {
    n = N; k = K;
    adj.assign(n, vector<int>());

    for (int i = 0; i < k-1; i++) {
        adj[i].push_back(i+1);
    }
}

int add_teleporter(int u, int v) {
    adj[u].push_back(v);
    if (!has_cycle)
        has_cycle = has_cycle || check();
    return has_cycle ? 1 : 0;
}
#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...