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: Wrong Answer)

using System;
using System.Collections.Generic;
using System.Linq;
    class Program
    {
        static void Main(string[] args)
        {
            List<string> I = new List<string>();
            string[] I1;
            double[] A = new double[6];
            double[] X = new double[2];
            string s;

            for (int i = 0; true; i++)
            {
                s = Console.ReadLine();
                if (string.IsNullOrEmpty(s)) break;
                I.Add(s);
            }
            for (int i = 0;i<I.Count; i++)
            {
                I1 = I[i].Split();
                for (short j = 0; j < 6; j++) {
                    A[j] = double.Parse(I1[j]);
                }
                X = Solve(A);
                Console.WriteLine("{0} {1}",Math.Round(X[0],3),Math.Round(X[1],3));
            }
        }

        public static double[] Solve(params double[] A) {
            double[] A1 = new double[6];
            double[] A2 = new double[6];
            double X, Y;
            int j;
            for (int i = 0; i < 6; i++) {
                j = i < 3 ? 4 : 1;
                A1[i] = A[i] * A[j];
                j = i < 3 ? 3 : 0;
                A2[i] = A[i] * A[j];
            }

            X = (A1[2] - A1[5]) / (A1[0] - A1[3]);
            Y = (A2[2] - A2[5]) / (A2[1] - A2[4]);
            return new double[] {X,Y};
        }
    }