제출 #1113801

#제출 시각아이디문제언어결과실행 시간메모리
1113801sunboi로봇 (IOI13_robots)C++17
0 / 100
141 ms9668 KiB
#include <bits/stdc++.h> #include "robots.h" using namespace std; int putaway(int A,int B,int T,int X[],int Y[],int W[],int S[]){ sort(X, X + A); reverse(X, X + A); sort(Y, Y + B); reverse(Y, Y + B); vector<pair<int, int>> a(T); bool f = 0; for (int i = 0; i < T; i++){ a[i] = {W[i], S[i]}; if (a[i].first >= X[0] && a[i].second >= Y[0]) f = 1; } if (f) return -1; sort(a.begin(), a.end()); reverse(a.begin(), a.end()); int ini = 1, fin = T + 1; while(ini < fin){ int m = (ini + fin) / 2; int k = 0; int tiempo = 0; priority_queue<int> pq; for (int i = 0; i < A; i++){ tiempo = 0; while(k < T && tiempo < m && X[i] > a[k].first){ k++; tiempo++; } if (k < T && tiempo < m){ pq.push(-a[k].second); k++; i--; } } k = 0; tiempo = 0; for (int i = 0; i < B; i++){ while(k < T && tiempo < m && !pq.empty()){ int v = pq.top(); v = -v; if (v < Y[i]) { k++; tiempo++; pq.pop(); }else break; } } if (pq.empty()){ fin = m; }else ini = m + 1; } return ini; }
#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...