/**
  *  Worg
  */
#include <cstdio>
#include <vector>
#include <cassert>
#include <algorithm>

#define lsb(x) (x & (-x))

//FILE *fin = freopen("main.in", "r", stdin); FILE *fout = freopen("main.out", "w", stdout);

const int kMaxSteps = 100;

/*-------- Structures --------*/
struct Fenwick {
    std::vector<int > v;
    int n;

    Fenwick(const int _n) {
        n = _n;
        v = std::vector<int >(n + 1, 0);
    }

    void Update(int index, int value) {
        for(int i = index; i <= n; i += lsb(i)) {
            v[i] += value;
        }
    }

    int Query(int index) {
        int answer = 0;
        for(int i = index; i > 0; i -= lsb(i)) {
            answer += v[i];
        }
        return answer;
    }
};
/*-------- Data --------*/
int N;
std::vector<int > a, b, c;
/*-------- --------*/

void ReadInput() {
    scanf("%d", &N);
    a.resize(N); b.resize(N); c.resize(N);

    for(int i = 0; i < N; i++) {
        scanf("%d%d%d", &a[i], &b[i], &c[i]);
    }
}

bool Comp(int i, int j) {
    return (a[i] * b[j]) > (b[i] * a[j]);
}

double Solve() {
    std::vector<int > id(N);

    for(int i = 0; i < N; i++) {
        if(b[i] < 0) {
            a[i] *= -1; b[i] *= -1; c[i] *= -1;
        }
        id[i] = i;
    }

    std::sort(id.begin(), id.end(), Comp);

    double left = -1e9, right = 1e9;
    std::vector<std::pair<double, int > > elements(N);

    for(int step = 0; step < kMaxSteps; step ++) {
        double mid = 0.5 * (right + left);

        for(int i = 0; i < N; i++) {
            elements[i] = {(double)(c[id[i]] - a[id[i]] * mid) / b[id[i]], i};
        }
        std::sort(elements.begin(), elements.end());

        Fenwick f = Fenwick(N);

        long long inversionCount = 0;
        for(int i = 0; i < N; i++) {
            inversionCount += f.Query(elements[i].second + 1);
            f.Update(elements[i].second + 1, 1);
        }

        if(inversionCount >= (1LL * N * (N - 1) / 2 + 1) / 2) {
            right = mid;
        } else {
            left = mid;
        }
    }

    return 0.5 * (left + right);
}

int main() {
    ReadInput();

    for(int i = 0; i < 2; i++) {
        printf("%.14f ", Solve());

        for(int j = 0; j < N; j++) {
            std::swap(a[j], b[j]);
        }
    }
    printf("\n");

	return 0;
}
