Submission #585629

# Submission time Handle Problem Language Result Execution time Memory
585629 2022-06-29T06:45:56 Z 반딧불(#8385) ICC (CEOI16_icc) C++14
0 / 100
176 ms 504 KB
#include "icc.h"
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

int qa[105], qb[105];
int qcnt;
int query(vector<int> a, vector<int> b){
    if(a.empty() || b.empty()) return false;
    if(++qcnt > 2500) exit(1);
    for(auto A: a) for(auto B: b) if(A==B) exit(1);

    for(int i=0; i<(int)a.size(); i++) qa[i] = a[i];
    for(int i=0; i<(int)b.size(); i++) qb[i] = b[i];
    return query(a.size(), b.size(), qa, qb);
}

struct unionFind{
    int par[105];
    void init(int _n){
        for(int i=1; i<=_n; i++) par[i] = i;
    }

    int find(int x){
        if(x==par[x]) return x;
        return par[x] = find(par[x]);
    }

    void merge(int x, int y){
        x = find(x), y = find(y);
        par[x] = y;
    }
} dsu;

int n;
bool arr[105][105];

void run(int N){
    n = N;
    dsu.init(n);
    for(int cnt=1; cnt<n; cnt++){
        int X=-1, Y=-1;
        for(int j=1; j<=n; j++){
            vector<int> v;
            for(int x=j+1; x<=n; x++) if(!arr[j][x]) v.push_back(x);
            if(!query(vector<int>(1, j), v)) continue;
            for(auto y: v){
                if(!query(vector<int>(1, j), vector<int>(1, y))) continue;
                X = j, Y = y;
                break;
            }
            break;
        }
        assert(X!=-1);
        setRoad(X, Y);
        arr[X][Y] = arr[Y][X] = 1;
    }
}
# Verdict Execution time Memory Grader output
1 Correct 9 ms 468 KB Ok! 210 queries used.
2 Incorrect 5 ms 468 KB Wrong road!
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 12 ms 468 KB Wrong road!
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 174 ms 504 KB Execution failed because the return code was nonzero
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 63 ms 504 KB Wrong road!
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 35 ms 504 KB Wrong road!
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 176 ms 504 KB Execution failed because the return code was nonzero
2 Halted 0 ms 0 KB -