Submission #43779

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
437792018-03-23 14:57:54tmwilliamlin168Robots (IOI13_robots)C++11
100 / 100
2056 ms65536 KiB
#include <bits/stdc++.h>
#include "robots.h"
using namespace std;
#define fi first
#define se second
const int mxN1=5e4, mxN2=1e6;
int a, b, t, x[mxN1], y[mxN1];
pair<int, int> ty[mxN2];
priority_queue<int> pq;
inline bool can(int m) {
pq = priority_queue<int>();
for(int i1=0, i2=0; i1<a; ++i1) {
for(; i2<t&&ty[i2].fi<x[i1]; pq.push(ty[i2++].se));
for(int j=0; j<m&&!pq.empty(); pq.pop(), ++j);
}
for(int i=t-1; i>=0&&ty[i].fi>=(a?x[a-1]:0); pq.push(ty[i--].se));
for(int i1=b-1; i1>=0&&!(!pq.empty()&&pq.top()>=y[i1]); --i1)
for(int j=0; j<m&&!pq.empty(); pq.pop(), ++j);
return pq.empty();
}
int putaway(int A, int B, int T, int X[], int Y[], int W[], int S[]) {
a=A, b=B, t=T;
memcpy(x, X, 4*a);
sort(x, x+a);
memcpy(y, Y, 4*b);
sort(y, y+b);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#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...