Submission #373154

#TimeUsernameProblemLanguageResultExecution timeMemory
373154luciocfRobots (IOI13_robots)C++14
14 / 100
238 ms19436 KiB
#include <bits/stdc++.h> #include "robots.h" #define ff first #define ss second using namespace std; typedef pair<int, int> pii; const int maxn = 1e6+10; int n, m, t; int x[maxn], y[maxn]; pii toy[maxn]; bool ok(int k) { int ptr = n, qtd = 0; for (int i = t; i >= 1; i--) { if (qtd == k) ptr--, qtd = 0; if (ptr == 0 || x[ptr] < toy[i].ff) return 0; ++qtd; } return 1; } int putaway(int A, int B, int T, int X[], int Y[], int W[], int S[]) { n = A, m = B, t = T; for (int i = 0; i < n; i++) x[i+1] = X[i]-1; for (int i = 0; i < m; i++) y[i+1] = Y[i]-1; for (int i = 0; i < t; i++) toy[i+1] = {W[i], S[i]}; sort(x+1, x+n+1); sort(y+1, y+m+1); sort(toy+1, toy+t+1); int ini = 1, fim = t, ans = -1; while (ini <= fim) { int mid = (ini+fim)>>1; if (ok(mid)) ans = mid, fim = mid-1; else ini = mid+1; } 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...