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;
using System.Text;

namespace aoj
{
    class Program
    {
        static void Main(string[] args)
        {
            while (true)
            {
                string[] a = new string[6];
                int d = 0;
                string k = Console.ReadLine();
                if (k == null) break;
                for (int i = 0; i <= k.Length - 1; i++)
                {
                    if (k.Substring(i, 1) == " ") d += 1;
                }
                if (d >= 5)
                {
                    if (k == null) break;
                    for (int i = 0; i <= k.Length - 1; i++)
                    {
                        if (k.Substring(i, 1) == " ") d += 1;
                        if (d == 5 && k.Substring(i, 1) != " ") a[0] = a[0] + k.Substring(i, 1);
                        if (d == 6 && k.Substring(i, 1) != " ") a[1] = a[1] + k.Substring(i, 1);
                        if (d == 7 && k.Substring(i, 1) != " ") a[2] = a[2] + k.Substring(i, 1);
                        if (d == 8 && k.Substring(i, 1) != " ") a[3] = a[3] + k.Substring(i, 1);
                        if (d == 9 && k.Substring(i, 1) != " ") a[4] = a[4] + k.Substring(i, 1);
                        if (d == 10 && k.Substring(i, 1) != " ") a[5] = a[5] + k.Substring(i, 1);
                    }
                    double[] s = new double[6];
                    s[0] = int.Parse(a[0]) * int.Parse(a[3]);
                    s[1] = int.Parse(a[1]) * int.Parse(a[3]);
                    s[2] = int.Parse(a[2]) * int.Parse(a[3]);
                    s[3] = int.Parse(a[3]) * int.Parse(a[0]);
                    s[4] = int.Parse(a[4]) * int.Parse(a[0]);
                    s[5] = int.Parse(a[5]) * int.Parse(a[0]);
                    s[1] = s[1] - s[4];
                    s[2] = s[2] - s[5];
                    s[2] = s[2] / s[1];
                    double x = 0;
                    double y = 0;
                    y = s[2];
                    x = (s[5] - s[4] * y) / s[3];
                    string xx = Math.Round(x, 3, MidpointRounding.AwayFromZero).ToString();
                    string yy = Math.Round(y, 3, MidpointRounding.AwayFromZero).ToString();
                    for (int i = 0; i <= xx.Length - 1; i++)
                    {
                        if (xx.Substring(i, 1) == ".") break;
                        if (i == xx.Length - 1) xx = xx + ".000";
                    }
                    for (int i = 0; i <= yy.Length - 1; i++)
                    {
                        if (yy.Substring(i, 1) == ".") break;
                        if (i == yy.Length - 1) yy = yy + ".000";
                    }

                    Console.WriteLine(xx + " " + yy);
                }
            }
        }
    }
}