제출 #729552

#제출 시각아이디문제언어결과실행 시간메모리
729552NeroZein로봇 (IOI13_robots)C++17
0 / 100
10 ms360 KiB
#include "robots.h"
#include <bits/stdc++.h>
using namespace std; 

const int N = 50004;  
const int T = 1000006;

int x[N], y[N];
int w[T], s[T];

int putaway(int A, int B, int T_, int X[], int Y[], int W[], int S[]) {
  int a, b, t;
  a = A;
  b = B;
  t = T_;
  for (int i = 0; i < a; ++i) {
    x[i] = X[i];
  }
  for (int i = 0; i < b; ++i) {
    y[i] = Y[i];
  }
  for (int i = 0; i < t; ++i) {
    w[i] = W[i];
  }
  for (int i = 0; i < t; ++i) {
    s[i] = S[i];
  }
  sort(x, x + a, greater<int>()); 
  sort(w, w + t, greater<int>()); 
  auto ch = [&](int mid) {
    int p = t - 1; 
    for (int i = 0; i < a; ++i) {//a are week 
      for (int j = 0; j < mid; ++j, ++p) {
        if (w[p] > x[i]) {
          return false; 
        }
      }
    }
    return true; 
  };
  int l = 0, r = T + 1;
  while (l < r) {
    int mid = (l + r) >> 1; 
    if (ch(mid)) {
      r = mid;
    } else {
      l = mid + 1; 
    }
  }
  return (l == t + 1 ? -1 : l); 
}
#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...