Submission #25241998


Source Code Expand

#include <iostream>
#include <algorithm>
using namespace std;

int N;
using T = pair<long long, long long>;
using S = pair<T, int>;
T P[200005];
S Q[200005], R[200005];

long long d(int i, int j) {
  return min(abs(P[i].first - P[j].first), abs(P[i].second - P[j].second));
}

int main() {
  cin >> N;
  for (int i = 0; i < N; i++) { cin >> P[i].first >> P[i].second; }
  long long ans = 0;

  for (int i = 0; i < N; i++) {
    Q[i] = { {P[i].first + P[i].second, P[i].first - P[i].second}, i };
    R[i] = { {P[i].first + P[i].second, P[i].first - P[i].second}, i };
  }

  sort(Q, Q+N, [](S&a, S&b) { return a.first.first < b.first.first; });
  sort(R, R+N, [](S&a, S&b) { return a.first.second < b.first.second; });
  // for (int i = 0; i < N; i++) { printf("Q[%d] = ((%lld, %lld), %d)\n", i, Q[i].first.first, Q[i].first.second, Q[i].second); }
  for (int i = 0; i < max(2, N/30); i++) {
    for (int j = 0; j < max(2, N/30); j++) {
      ans = max(ans, d(Q[i].second, Q[N-1-j].second));
      ans = max(ans, d(Q[i].second, R[N-1-j].second));
      ans = max(ans, d(R[i].second, Q[N-1-j].second));
      ans = max(ans, d(R[i].second, R[N-1-j].second));

      ans = max(ans, d(Q[i].second, Q[N/2-1-j].second));
      if (N/2-1+j < N) { ans = max(ans, d(Q[i].second, Q[N/2-1+j].second)); }
      if (N/2-i >= 0) { ans = max(ans, d(Q[N/2-i].second, Q[N-1-j].second)); }
      ans = max(ans, d(Q[N/2+i].second, Q[N-1-j].second));
    }
  }

  cout << ans << endl;
}

Submission Info

Submission Time
Task F - Dist Max 2
User daimatz
Language C++ (GCC 9.2.1)
Score 0
Code Size 1510 Byte
Status WA
Exec Time 1867 ms
Memory 16140 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 500
Status
AC × 3
AC × 23
WA × 10
Set Name Test Cases
Sample sample_00.txt, sample_01.txt, sample_02.txt
All case_00.txt, case_01.txt, case_02.txt, case_03.txt, case_04.txt, case_05.txt, case_06.txt, case_07.txt, case_08.txt, case_09.txt, case_10.txt, case_11.txt, case_12.txt, case_13.txt, case_14.txt, case_15.txt, case_16.txt, case_17.txt, case_18.txt, case_19.txt, case_20.txt, case_21.txt, case_22.txt, case_23.txt, case_24.txt, case_25.txt, case_26.txt, case_27.txt, case_28.txt, case_29.txt, sample_00.txt, sample_01.txt, sample_02.txt
Case Name Status Exec Time Memory
case_00.txt AC 1857 ms 16060 KiB
case_01.txt AC 1851 ms 16072 KiB
case_02.txt AC 1850 ms 16068 KiB
case_03.txt AC 1842 ms 15948 KiB
case_04.txt AC 1847 ms 16076 KiB
case_05.txt AC 1849 ms 16068 KiB
case_06.txt AC 1851 ms 16024 KiB
case_07.txt AC 1845 ms 16068 KiB
case_08.txt AC 1848 ms 15880 KiB
case_09.txt AC 1842 ms 16028 KiB
case_10.txt AC 1762 ms 15876 KiB
case_11.txt AC 1473 ms 14828 KiB
case_12.txt AC 607 ms 11168 KiB
case_13.txt AC 975 ms 12788 KiB
case_14.txt AC 252 ms 8672 KiB
case_15.txt AC 636 ms 11236 KiB
case_16.txt AC 958 ms 12664 KiB
case_17.txt AC 171 ms 7904 KiB
case_18.txt AC 672 ms 11524 KiB
case_19.txt AC 94 ms 6464 KiB
case_20.txt WA 1861 ms 16028 KiB
case_21.txt WA 1854 ms 16140 KiB
case_22.txt WA 1844 ms 16072 KiB
case_23.txt WA 1858 ms 15908 KiB
case_24.txt WA 1848 ms 15948 KiB
case_25.txt WA 1847 ms 16028 KiB
case_26.txt WA 1845 ms 16140 KiB
case_27.txt WA 1849 ms 16104 KiB
case_28.txt WA 1845 ms 16072 KiB
case_29.txt WA 1867 ms 15948 KiB
sample_00.txt AC 3 ms 3424 KiB
sample_01.txt AC 2 ms 3564 KiB
sample_02.txt AC 2 ms 3540 KiB