Submission #921887

#TimeUsernameProblemLanguageResultExecution timeMemory
921887Alihan_8Robots (IOI13_robots)C++17
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>

using namespace std;

#define all(x) x.begin(), x.end()
#define ar array
#define pb push_back
#define ln '\n'
//#define int long long

using i64 = long long;

template <class F, class _S>
bool chmin(F &u, const _S &v){
    bool flag = false;
    if ( u > v ){
        u = v; flag |= true;
    }
    return flag;
}

template <class F, class _S>
bool chmax(F &u, const _S &v){
    bool flag = false;
    if ( u < v ){
        u = v; flag |= true;
    }
    return flag;
}

int putaway(int A, int B, int T, int X[], int Y[], int W[], int S[]) {
    vector <int> x, y;
    vector <ar<int,2>> p;
    for ( int i = 0; i < A; i++ ){
        x.pb(X[i]);
    }
    for ( int i = 0; i < B; i++ ){
        y.pb(Y[i]);
    }
    for ( int i = 0; i < T; i++ ){
        p.pb({W[i], S[i]});
    }
    sort(all(p)), sort(all(x)), sort(all(y));
    reverse(all(y));
    auto ok = [&](int k){
        priority_queue <int> q;
        int j = 0;
        for ( auto &i: x ){
            while ( j < T && p[j][0] < i ){
                q.push(p[j][1]);
                j++;
            }
            int f = k;
            while ( f > 0 && !q.empty() ){
                q.pop(); --f;
            }
        }
        while ( j < T ){
            q.push(p[j][1]);
            j++;
        }
        for ( auto &i: y ){
            if ( q.empty() ) break;
            if ( q.top() >= i ){
                return false;
            }
            int f = k;
            while ( f > 0 && !q.empty() ){
                q.pop(), --f;
            }
        }
        return true;
    };
    int l = 0, r = T + 1;
    while ( l < r ){
        int md = (l + r) / 2;
        if ( ok(md) ) r = md;
        else l = md + 1;
    }
    if ( l == T + 1 ){
        return -1;
    } return l;
}

Compilation message (stderr)

/usr/bin/ld: /tmp/ccn8E0ds.o: in function `main':
grader.c:(.text.startup+0x1b1): undefined reference to `putaway'
collect2: error: ld returned 1 exit status