Submission #144573

#TimeUsernameProblemLanguageResultExecution timeMemory
144573youssefbou62Robots (IOI13_robots)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> // #include "robots.h" using namespace std; #define mp make_pair #define fi first #define se second #define all(v) v.begin(),v.end() #define allarr(a) a , a + n #define ll long long #define ull unsigned long long #define pb push_back #define fastio ios_base::sync_with_stdio(false) ; cin.tie(NULL); cout.tie(NULL) typedef pair<int, int> pi; typedef pair<ll,ll> pll; typedef pair<int,pi> trp ; typedef vector<pi> vpi; typedef vector<pll> vpll ; // int ab (int x ) { return (x>0?x:-x); } const int TT = 1e6+5; bool done[TT]; int putaway(int A, int B, int T,int X[], int Y[], int W[], int S[]){ int l = 0 , r = T; sort(X,X+A); sort(Y,Y+B); vector<vector<int>> ByWei(T),BySi(T); for(int i = 0 ; i < T ; i++ ){ // ByWei.pb({W[i],S[i],i}); // BySi.pb({S[i],W[i],i}); ByWei[i]={W[i],S[i],i}; BySi[i]={S[i],W[i],i}; } sort(all(ByWei)); sort(all(BySi)); int ans = -1 ; priority_queue<pi> q; pi p;int mins,i;int DONE; while ( l <= r ){ DONE = 0 ; int mid = l + (r-l)/2; // for( i = 0 ; i < T ; i++ )done[i]=0; // memset(done,0,sizeof done); i = 0 ; // q = priority_queue<pi> () ; for(int a=0;a<A;a++){ while(i < T && ByWei[i][0]<X[a]){ if( !done[ByWei[i][2]]) q.push({ByWei[i][1],ByWei[i][2]}); i++; } mins = mid; while(mins&&!q.empty()){ p = q.top(); q.pop(); assert(!done[p.se]); done[p.se]=1; mins--; DONE ++ ; } } while(!q.empty())q.pop(); i =0; // q = priority_queue<pi> () ; for(int b=0;b<B;b++){ mins = mid; while(i < T && BySi[i][0]<Y[b]){ if( !done[BySi[i][2]] && mins){ DONE++; mins--; }i++; } mins = mid; while(mins&&!q.empty()){ p = q.top(); q.pop(); assert(!done[p.se]); done[p.se]=1; mins--; DONE++; } } while(!q.empty())q.pop(); bool doneAll =(DONE==T); // for( i = 0 ; i < T ; i++ )doneAll = doneAll&&done[i]; if( doneAll ){ ans = mid ; r = mid-1; }else { l = mid+1; } } return ans ; } int main(){ int A , B , T ; cin >> A >> B >> T ; int X[A] , Y[B] , W[T] , S[T] ; for(int i = 0 ; i < A ; i++ )cin >> X[i]; for(int i = 0 ; i < B ; i++ )cin >> Y[i]; for(int i = 0 ; i < T ; i++ ){ cin >> W[i] >> S[i] ; } cout << putaway(A,B,T,X,Y,W,S); }

Compilation message (stderr)

/tmp/ccmRMxMb.o: In function `main':
robots.cpp:(.text.startup+0x0): multiple definition of `main'
/tmp/ccjCANEN.o:grader.c:(.text.startup+0x0): first defined here
/tmp/ccjCANEN.o: In function `main':
grader.c:(.text.startup+0x17e): undefined reference to `putaway'
collect2: error: ld returned 1 exit status