Submission #418455

#TimeUsernameProblemLanguageResultExecution timeMemory
418455Bill_00Robots (IOI13_robots)C++14
39 / 100
3076 ms53568 KiB
#include "robots.h" #include <bits/stdc++.h> using namespace std; vector<int>s[1000005]; bool vis[1000005]; vector<pair<int,int> >v; int putaway(int A, int B, int T, int X[], int Y[], int W[], int H[]) { sort(X,X+A); sort(Y,Y+B); for(int i=0;i<T;i++){ if(W[i]>=X[A-1] && H[i]>=Y[B-1]) return -1; } for(int i=0;i<A;i++){ for(int j=0;j<T;j++){ if(W[j]<X[i]) s[i].push_back(j); } } for(int i=0;i<B;i++){ for(int j=0;j<T;j++){ if(H[j]<Y[i]) s[i+A].push_back(j); } } for(int i=0;i<(A+B);i++) v.push_back({s[i].size(),i}); int k=0,ans=0; while(k<T){ for(int i=0;i<=(A+B-1);i++){ int id=v[i].second; while(s[id].size()>0 && vis[s[id].back()]==1) s[id].pop_back(); if(s[id].size()){ vis[s[id].back()]=1; s[id].pop_back(); k++; } } ans++; } return ans; }
#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...