Submission #1366233

#TimeUsernameProblemLanguageResultExecution timeMemory
1366233opeleklanosToy Design (EGOI22_toydesign)C++20
Compilation error
0 ms0 KiB
#include <iostream>
#include <vector>
using namespace std;

#include "ToyDesign.h"

int lastLevel = 0;
vector<int> rep;

struct segTree{
    int l; int r;
    int leader;
    segTree * lc, * rc;
    int level;
    segTree(int ind){
        leader = rep[ind];
        l = r = ind;
        level = 0;
        lc = rc = nullptr;
    }

    segTree(segTree*le, segTree*ri){
        lc = le;
        rc = ri;
        l = lc->l;
        r = rc->r;
        leader = lc->leader;
        level = Connected(lc->level, lc->leader, rc->leader);
        lastLevel = level;
    }
};

segTree * build(int l, int r){
    int mid = (l+r)/2;
    if(l==r) return new segTree(l);
    else return new segTree(build(l, mid), build(mid+1, r));
}

int query(segTree * st, int nd){
    if(st->l == st->r) return st->leader;

    if(st->lc->level == Connected(st->lc->level, nd, st->lc->leader)) return query(st->lc, nd);
    else return query(st->rc, nd);
}

void ToyDesign(int n, int max_ops){
    rep.clear();
    rep.push_back(1);
    for(int i = 2; i<=n; i++){
        int b = Connected(lastLevel, 1, i);
        if(b>lastLevel) rep.push_back(i);
        lastLevel = b;
    }

    segTree * seg = build(0, rep.size()-1);

    vector<pair<int, int>> ans;

    int repind = 0;

    for(int i = 1; i<=n; i++){
        if(i == rep[repind]){
            repind++;
            continue;
        }
        ans.push_back({i, query(seg, i)});
    }
    DescribeDesign(ans);
}

Compilation message (stderr)

Main.cpp:5:10: fatal error: ToyDesign.h: No such file or directory
    5 | #include "ToyDesign.h"
      |          ^~~~~~~~~~~~~
compilation terminated.