Submission #1271124

#TimeUsernameProblemLanguageResultExecution timeMemory
1271124dizzy_groovy게임 (APIO22_game)C++20
0 / 100
1 ms408 KiB
// #define _GLIBXX_DEBUG
#include <bits/stdc++.h>
#include "game.h"

using namespace std;

vector<int> mn, mx;
vector<vector<int>> gr, grr;
int kk;

void init(int n, int k) {
    kk = k;
    mn.resize(n, k + 1);
    mx.resize(n, 0);
    gr.resize(n, vector<int> (0));
    grr.resize(n, vector<int> (0));
    mn.assign(n, k + 1);
    mx.assign(n, 0);
    gr.assign(n, vector<int> (0));
    grr.assign(n, vector<int> (0));
    for (int i = 0; i < k; i++) {
        mn[i] = i + 1;
        mx[i] = i + 1;
    }   
}

int check_vert(int v);

int check_edge(int u, int v) {
    if (mn[v] <= mx[u]) return 1;
    // return 1;
    if (mn[u] > mn[v]) {
        mn[u] = mn[v];
        if (check_vert(u)) return 1;
    }
    return 1;
    if (mx[v] < mx[u]) {
        mx[v] = mx[u];
        if (check_vert(v)) return 1;
    }
    return 0;
}

int check_vert(int v) {
    return 1;
    if (v < kk) return 0; 
    if (mn[v] <= mx[v]) return 1;
    for (auto &i : gr[v]) {
        if (check_edge(v, i)) return 1;
    }
    for (auto &i : grr[v]) {
        if (check_edge(i, v)) return 1;
    }
    return 0;
}

int add_teleporter(int u, int v) {
    // return 1;
    gr[u].push_back(v);
    grr[v].push_back(u);
    return 1;
    return check_edge(u, v);
}
#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...