#include //#include using namespace std; //using namespace atcoder; using ll = long long; //using mint = modint998244353; int main(){ cin.tie(nullptr); ios_base::sync_with_stdio(false); /* ax+by+c = 0 a, bを乱択して半分に分けるbは二分探索で見つける。 直線上に点が存在しなければそれが答え。 */ ll N, M=2e10; cin >> N; vector x(N*2), y(N*2); for (int i=0; i> x[i] >> y[i]; random_device seed; mt19937 engine(seed()); uniform_int_distribution<> dist(-100000, 100000); while(1){ ll a = dist(engine), b = dist(engine); if (a == 0 && b == 0) continue; ll l=-M-1, r=M, c; while(r-l>1){ c = (l+r)/2; ll cnt=0; for (int i=0; i0) cnt++; } if (cnt >= N) r=c; else l=c; } ll cnt=0; bool f=1; for (int i=0; i 0); } if (f && (cnt == N)){ cout << a << " " << b << " " << r << endl; return 0; } } return 0; }