Submission #963879

# Submission time Handle Problem Language Result Execution time Memory
963879 2024-04-16T00:48:03 Z irmuun Robots (IOI13_robots) C++17
28 / 100
215 ms 18288 KB
#include<bits/stdc++.h>
#include "robots.h"

using namespace std;

#define ll long long
#define pb push_back
#define ff first
#define ss second
#define all(s) s.begin(),s.end()
#define rall(s) s.rbegin(),s.rend()

int putaway(int A,int B,int T,int X[],int Y[],int W[],int S[]){
    int w[A+B],s[A+B];
    for(int i=0;i<A;i++){
        w[i]=X[i];
        s[i]=2e9+1;
    }
    for(int i=A;i<A+B;i++){
        w[i]=2e9+1;
        s[i]=Y[i-A];
    }
    function <bool(int,int)> check=[&](int i,int j){
        if(w[i]>W[j]&&s[i]>S[j]) return true;
        return false;
    };
    if(T==2&&A+B==2){
        if(check(0,1)&&check(1,0)) return 1;
        if(check(0,0)&&check(1,1)) return 1;
        if(check(0,1)&&check(0,0)) return 2;
        if(check(1,0)&&check(1,1)) return 2;
        return -1;
    }
    if(B==0){
        sort(W,W+T);
        sort(w,w+A);
        int r=A,ans=0;
        if(w[A-1]<=W[T-1]){
            return -1;
        }
        set<pair<int,int>>st;
        for(int i=T-1;i>=0;i--){
            while(r-1>=0&&w[r-1]>W[i]){
                r--;
                st.insert({0,r});
            }
            int c=st.begin()->ff,j=st.begin()->ss;
            st.erase({c,j});
            st.insert({c+1,j});
            ans=max(ans,c+1);
        }
        return ans;
    }
    return -1;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 4440 KB Output is correct
2 Correct 1 ms 4440 KB Output is correct
3 Correct 1 ms 4444 KB Output is correct
4 Correct 1 ms 4444 KB Output is correct
5 Correct 1 ms 4444 KB Output is correct
6 Correct 1 ms 4536 KB Output is correct
7 Correct 1 ms 4444 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 4440 KB Output is correct
2 Correct 1 ms 4444 KB Output is correct
3 Correct 1 ms 4444 KB Output is correct
4 Correct 193 ms 18288 KB Output is correct
5 Correct 124 ms 15576 KB Output is correct
6 Correct 33 ms 8528 KB Output is correct
7 Correct 210 ms 15704 KB Output is correct
8 Correct 198 ms 17692 KB Output is correct
9 Correct 215 ms 17752 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 4440 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 4444 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 4444 KB Output isn't correct
2 Halted 0 ms 0 KB -