#include <bits/stdc++.h>
#include <climits>
using namespace std;
#define int long long
class point {
public:
int x;
int y;
};
int js(point v1, point v2) {
int s1 = v1.x - v2.x;
int s2 = v1.y - v2.y;
return s1 * s1 + s2 * s2;
}
signed main() {
int T;
cin >> T;
int sz = T;
vector<point>dian;
dian.resize(T);
int q = 0;
int med = T / 2;
while (T--) {
cin >> dian[q].x >> dian[q].y;
q++;
}
sort(dian.begin(), dian.end(), [](point v1, point v2) {
return v1.x > v2.x;
});
int max = INT_MIN;
point red;
point puper;
for (int i = 0; i < med; i++) {
for (int j = i + 1; j < med; j++) {
int ou = js(dian[i], dian[j]);
if (ou > max) {
max=ou;
red = dian[i];
puper = dian[j];
}
}
for (int j = sz - i - 1; j > med; j--) {
int ou = js(dian[sz - i - 1], dian[j]);
if (ou > max) {
max=ou;
red = dian[sz - i];
puper = dian[j];
}
}
for (int j = sz - i - 1; j > med; j--) {
int ou = js(dian[i], dian[j]);
if (ou > max) {
max=ou;
red = dian[i];
puper = dian[j];
}
}
}
int pul = med - med / 2-1;
int pul2 = med + med / 2+1;
for (int i = pul; i < pul2; i++) {
for (int j = i + 1; j < pul2; j++) {
int ou = js(dian[i], dian[j]);
if (ou > max) {
max=ou;
red = dian[i];
puper = dian[j];
}
}
}
for (int i = pul; i>=0; i--) {
for (int j = pul2; j < sz; j++) {
int ou = js(dian[i], dian[j]);
if (ou > max) {
max=ou;
red = dian[i];
puper = dian[j];
}
}
}
vector<point>jg;
jg.push_back(red);
jg.push_back(puper);
sort(jg.begin(), jg.end(), [](point v1, point v2) {
return v1.x < v2.x;
});
cout<<jg[0].x<<" "<<jg[0].y<<" "<<jg[1].x<<" "<<jg[1].y;
}
// 64 位输出请用 printf("%lld")
周赛的题目终于写出来了

京公网安备 11010502036488号