Problem:
Simultaneous Equation

Write a program which solve a simultaneous equation:

ax + by = c

dx + ey = f

The program should print x and y for given a, b, c, d, e and f (-1,000 ≤ a, b, c, d, e, f ≤ 1,000). You can suppose that given equation has a unique solution.

Input

The input consists of several data sets, 1 line for each data set. In a data set, there will be a, b, c, d, e, f separated by a single space. The input terminates with EOF.

Output

For each data set, print x and y separated by a single space. Print the solution to three places of decimals. Round off the solution to three decimal places.

Sample Input 1

1 2 3 4 5 6
2 -1 -2 -1 -1 -5

Output for the Sample Input 1

-1.000 2.000
1.000 4.000

Sample Input 2

2 -1 -3 1 -1 -3
2 -1 -3 -9 9 27

Output for the Sample Input 2

0.000 3.000
0.000 3.000

Solution in C# (judge verdict: Accepted)

using System;
using System.IO;
using System.Linq;

class Program
{
    static void Main()
    {
        string line;
        while((line = Console.ReadLine()) != null)
        {
            double[] a = line.Split(' ').Select(double.Parse).ToArray();
            double[,] m = new double[2, 2] { { a[0], a[1] }, { a[3], a[4] } };
            double[] v = new double[2] { a[2], a[5] };

            double d = m[0, 0] * m[1, 1] - m[0, 1] * m[1, 0];

            m[0, 0] /= d; m[0, 1] /= -d; m[1, 0] /= -d; m[1, 1] /= d;
            swap(ref m[0, 0], ref m[1, 1]);

            double x = m[0, 0] * v[0] + m[0, 1] * v[1];
            double y = m[1, 0] * v[0] + m[1, 1] * v[1];

            Console.WriteLine(string.Format("{0:f3} {1:f3}", x, y));
        }
    }

    static void swap(ref double a, ref double b)
    {
        double temp = a;
        a = b;
        b = temp;
    }
}