fork download
  1. // lightball
  2. // http://i...content-available-to-author-only...r.net/ckfinder/userfiles/files/De%20220810.pdf
  3.  
  4. #include <bits/stdc++.h>
  5. using namespace std;
  6.  
  7. int n, m, p, a[100009], b[100009], c[100009];
  8.  
  9. void nhap(int n, int a[]) {
  10. for (int i = 1; i <= n; i++) cin >> a[i];
  11. }
  12.  
  13. unsigned long long ans = ULLONG_MAX;
  14.  
  15. unsigned long long sqr(long long x) {
  16. return x * x;
  17. }
  18.  
  19. void solve(int n, int a[], int m, int b[], int p, int c[]) {
  20. for (int i = 1, j = 1, k = 1; i <= n; i++) {
  21. while (b[j + 1] <= a[i]) j++;
  22.  
  23. if (j > m) break;
  24.  
  25. while (c[k + 1] <= b[j]) k++;
  26. if (k > p) break;
  27.  
  28. ans = min(ans, sqr(a[i] - b[j]) + sqr(a[i] - c[k]) + sqr(b[j] - c[k]));
  29. }
  30. }
  31. int main() {
  32. freopen("inp.txt", "rt", stdin);
  33. ios::sync_with_stdio(0);
  34. cin >> n >> m >> p;
  35.  
  36. nhap(n, a), nhap(m, b), nhap(p, c);
  37.  
  38. sort(a + 1, a + n + 1), sort(b + 1, b + m + 1), sort(c + 1, c + p + 1);
  39.  
  40. a[n + 1] = b[m + 1] = c[p + 1] = 1e9 + 9;
  41.  
  42. solve(n, a, m, b, p, c);
  43. solve(n, a, p, c, m, b);
  44. solve(m, b, n, a, p, c);
  45. solve(m, b, p, c, n, a);
  46. solve(p, c, n, a, m, b);
  47. solve(p, c, m, b, n, a);
  48.  
  49. cout << ans << endl;
  50. }
Success #stdin #stdout 0.01s 5360KB
stdin
Standard input is empty
stdout
18446744073709551615