#include <cmath>
#include <cstring>
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <fstream>
#include <algorithm>
#include <queue>

#define rep(i, l, r) for(int i = l; i <= r; i++)
#define down(i, l, r) for(int i = l; i >= r; i--)
#define MS 19
#define MAX 1037471823
#define Q 103

using namespace std;

int n;
double b[MS][MS], k[MS][MS], a, x[MS];

int main()
{
	scanf("%d", &n);
	rep(i, 1, n+1) rep(j, 1, n) scanf("%lf", &b[i][j]);
	rep(i, 1, n) rep(j, 1, n) k[i][j] = b[i][j] - b[i+1][j];
	rep(i, 1, n) rep(j, 1, n) k[i][0] += b[i][j] * b[i][j] - b[i+1][j] * b[i+1][j];
	rep(i, 1, n) k[i][0] /= 2;
	rep(i, 1, n) 
	{
		rep(j, i+1, n)
		{
			a = k[j][i] / k[i][i];
			rep(o, 0, n) k[j][o] -= k[i][o] * a;
		}
	}
	down(i, n, 1) 
	{
		x[i] = k[i][0] / k[i][i];
		rep(j, 1, i-1) k[j][0] -= k[j][i] * x[i];
	}
	rep(i, 1, n-1) printf("%.3f ", x[i]); printf("%.3f", x[n]);
	return 0;
}
