Submission #1348645

#TimeUsernameProblemLanguageResultExecution timeMemory
1348645sash01Robots (IOI13_robots)C++20
0 / 100
0 ms344 KiB
#include <bits/stdc++.h>
#include "robots.h"
using namespace std;
int a,b,t,x[1048576],y[1048576],w[1048576],s[1048576];
bool check(int tx)
{
    int p=1;
    int i=1;
    while(i<=t&&p<=a)
    {
        if(w[min(i+tx-1,t)]<x[p])
        {
            i+=tx;
        }
        else
        {
            while(i<=t&&w[i]<x[p])i++;
        }
        p++;
    }
    if(p>a&&i<=t)return false;
    return true;
}
int bin()
{
    int l=1,r=t,mid,ans=-1;
    while(l<=r)
    {
        mid=(l+r)/2;
        if(check(mid))
        {
            ans=mid;
            r=mid-1;
        }
        else l=mid+1;
    }
    return ans;
}
int putaway(int A, int B, int T, int X[], int Y[], int W[], int S[])
{
    a=A;
    b=B;
    t=T;
    for(int i=0;i<a;i++)
    {
        y[i+1]=X[i];
    }
    for(int i=0;i<b;i++)
    {
        y[i+1]=Y[i];
    }
    for(int i=0;i<t;i++)
    {
        w[i+1]=W[i];
        s[i+1]=S[i];
    }
    sort(w+1,w+t+1);
    return bin();
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...