Submission #197035

#TimeUsernameProblemLanguageResultExecution timeMemory
197035quocnguyen1012Cipele (COCI18_cipele)C++14
90 / 90
57 ms3164 KiB
#include <bits/stdc++.h>

#define fi first
#define se second
#define mp make_pair
#define pb push_back

using namespace std;
typedef long long ll;

vector<int> a, b;
int N, M;

bool check(int val)
{
  int j = M - 1;
  for (int i = N - 1; i >= 0; --i){
    while (j >= 0 && abs(a[i] - b[j]) > val) --j;
    if(j < 0){
      return false;
    }
    --j;
  }
  return true;
}

signed main(void)
{
  ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
  if (fopen("A.INP", "r")){
    freopen("A.INP", "r", stdin);
    freopen("A.OUT", "w", stdout);
  }
  cin >> N >> M;
  a.resize(N); b.resize(M);
  for (auto & x : a) cin >> x;
  for (auto & x : b) cin >> x;
  sort(a.begin(), a.end()); sort(b.begin(), b.end());
  if (N > M){
    swap(a, b);
    swap(N, M);
  }
  int l = 0, r = 1e9, mid;
  while (l <= r){
    mid = (l + r) / 2;
    if (!check(mid)) l = mid + 1;
    else r = mid - 1;
  }
  cout << l;
}

Compilation message (stderr)

cipele.cpp: In function 'int main()':
cipele.cpp:31:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
     freopen("A.INP", "r", stdin);
     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
cipele.cpp:32:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
     freopen("A.OUT", "w", stdout);
     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
#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...
#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...