Submission #68300

#TimeUsernameProblemLanguageResultExecution timeMemory
68300MKopchevRobots (IOI13_robots)C++14
Compilation error
0 ms0 KiB
#include<bits/stdc++.h> #include "robots.h" using namespace std; const int nmax=1e6+42; vector< pair<int/*weight*/,int/*size*/> > robots; vector<int> SIZES; priority_queue<int> q,emp; bool can(int t) { q=emp; for(auto k:robots) if(k.second!=-1)q.push(k.second); else { int rem=q.size(); if(rem>t)rem=t; for(int j=1;j<=rem;j++) q.pop(); } if(q.size()==0)return 1; for(auto k:SIZES) { if(q.top()>k)return 0; if(q.size()<=t)return 1; for(int j=1;j<=t;j++) q.pop(); } return 0; } bool cmp(pair<int/*weight*/,int/*size*/> a,pair<int/*weight*/,int/*size*/> b) { if(a.first!=b.first)return a.first<b.first; return a.second>b.second; } int putaway(int A,int B,int T,vector<int> X/*w,a*/,vector<int> Y/*s,b*/,vector<int> W/*t*/,vector<int> S/*t*/) { for(int i=0;i<A;i++)X[i]--; for(int i=0;i<B;i++)Y[i]--; for(int i=0;i<T;i++)robots.push_back({W[i],S[i]}); for(int i=0;i<A;i++)robots.push_back({X[i],-1}); sort(robots.begin(),robots.end(),cmp); sort(Y.begin(),Y.end()); reverse(Y.begin(),Y.end()); SIZES=Y; int ok=T+1,not_ok=-1; while(ok-not_ok>1) { int av=(ok+not_ok)/2; if(can(av))ok=av; else not_ok=av; } if(not_ok==T)return -1; return ok; } /* int main() { cout<<putaway(3,2,10,{6,2,9},{4,7},{4,8,2,7,1,5,3,8,7,10},{6,5,3,9,8,1,3,7,6,5})<<endl; } */

Compilation message (stderr)

robots.cpp: In function 'bool can(int)':
robots.cpp:24:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(q.size()<=t)return 1;
            ~~~~~~~~^~~
/tmp/ccncdFLC.o: In function `main':
grader.c:(.text.startup+0x17e): undefined reference to `putaway'
collect2: error: ld returned 1 exit status