Submission #1215513

#TimeUsernameProblemLanguageResultExecution timeMemory
1215513mayacGondola (IOI14_gondola)C++20
Compilation error
0 ms0 KiB
#include <iostream>
#include <vector>
#include <queue>
#include <set>
using namespace std;
bool valid(int n, vector<int> v) {
    for (int i = 0; i < n; i++) {
        //cout << i << " ";
        if (v[i] - 1 != (v[0] - 1 + i) % n)return 0;
    }
    return 1;
}

int valid(int n, int v[]) {
    for (int i = 0; i < n; i++) {
        //cout << i << " ";
        if (v[i] - 1 != (v[0] - 1 + i) % n)return 0;
    }
    return 1;
}
int replacement(int n, int tmp[], int ans[]) {
    int l=0,t=-1;
    priority_queue < pair<int, int>> pq;
    set<int> s;
    for (int i = 0; i < n; i++) {
        l = max(l, tmp[i]);
        s.insert(i);
        if (tmp[i] <= n)t = i;
        else {
            pq.push({ -tmp[i],i });
        }
    }
    
    vector<int> v(n);
    l -= n;
    if (t == -1) {
        for (int i = 0; i < n; i++)v[i] = i + 1;
    }
    else {
        for (int i = 0; i < n; i++)v[i + t] = ((v[t] - 1 + i) % n) + 1;
    }
    
    for (int i = 0; i < l; i++) {
        int m = -pq.top().first, ind = pq.top().second;
        if (m == i + n + 1) {
            pq.pop();
            s.erase(ind);
            ans[i] = v[ind];
        }
        else {
            ind = *(s.begin());
            ans[i] = v[ind];
            v[ind] = n + i + 1;
        }
    }
    return l;
}
int countReplacement(int n, int inputSeq[]) {
    return 0;
}

Compilation message (stderr)

/usr/bin/ld: /tmp/cc6c2p1V.o: in function `main':
grader.cpp:(.text.startup+0xae): undefined reference to `valid'
/usr/bin/ld: grader.cpp:(.text.startup+0x108): undefined reference to `countReplacement'
/usr/bin/ld: grader.cpp:(.text.startup+0x135): undefined reference to `replacement'
collect2: error: ld returned 1 exit status