This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
#include "robots.h"
using namespace std;
#define ll int
#define db double
#define pairll pair<ll,ll>
#define lpairll pair<ll,pairll>
#define repp(i,a,b) for (int i = (a); i <= (b); i++)
#define repz(i,a,b) for (int i = (a); i < (b); i++)
#define repm(i,a,b) for (int i = (a); i >= (b); i--)
#define fr first
#define sc second
#define mp make_pair
#define pb push_back
const ll N = 5e5+5;
ll tc = 1, n, m, k;
string s, s1, s2, ye = "YES", no = "NO";
vector<pairll> toys;
bool pos(ll key, ll wei[], ll siz[]){
    priority_queue<ll> pq;
    ll idx = 0;
    repp(i,0,n-1){
        while(idx < k && toys[idx].fr < wei[i]){
            pq.push(toys[idx].sc);
            idx++;
        }
        ll quan = 0;
        while(pq.size() && quan < key){
            quan++;
            pq.pop();
        }
    }
    while(idx < k){
        pq.push(toys[idx].sc);
        idx++;
    }
    repm(i,m-1,0){
        ll quan = 0;
        while(pq.size() && quan < key && pq.top() < siz[i]){
            pq.pop();
            quan++;
        }
    }
    return pq.empty();
}
ll putaway(ll A, ll B, ll T, ll X[], ll Y[], ll W[], ll S[]){
    n = A, m = B, k = T;
    //X = weight, Y = size
    sort (X,X+A);
    sort (Y,Y+B);
    repp(i,0,T-1){
        toys.pb(mp(W[i],S[i]));
        if (W[i] >= X[n-1] && S[i] >= Y[m-1]) return -1;
    }
    sort(toys.begin(),toys.end());
    ll l = 1, r = k, ret;
    while(l <= r){
        ll md = (l+r)/2;
        if (pos(md,X,Y)){
            ret = md;
            r = md-1;
        }
        else l = md+1;
    }
    return ret;
}
// void input(){
//     cin >> n >> m >> k;
//     ll ar[n], br[m], cr[k], dr[k];
//     repp(i,0,n-1) cin >> ar[i];
//     repp(i,0,m-1) cin >> br[i];
//     repp(i,0,k-1) cin >> cr[i];
//     repp(i,0,k-1) cin >> dr[i];
//     cout << putaway(n,m,k,ar,br,cr,dr) << endl;
// }
// void solve(){
    
// }
// int main(){
//     ios_base::sync_with_stdio(0);
//     cin.tie(NULL); cout.tie(NULL);
//     //cin >> tc;
//     while(tc--){
//       input();
//       solve();
//     }
// }
Compilation message (stderr)
robots.cpp: In function 'int putaway(int, int, int, int*, int*, int*, int*)':
robots.cpp:61:22: warning: 'ret' may be used uninitialized in this function [-Wmaybe-uninitialized]
   61 |     ll l = 1, r = k, ret;
      |                      ^~~| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |