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 JAVA (judge verdict: Accepted)

import java.io.IOException;
import java.io.InputStreamReader;
import java.io.BufferedReader;

import java.math.BigDecimal;

public class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String line;

        while( (line = br.readLine()) != null ){
            String[] input = line.split(" ");
            double[] data = new double[6];

            for(int i = 0; i < 6; i++){
                data[i] = Double.parseDouble(input[i]);
            }

            double x = (data[2]*data[4] - data[1]*data[5]) /
                       (data[4]*data[0] - data[1]*data[3]);
            double y = (data[0]*data[5] - data[3]*data[2]) /
                       (data[4]*data[0] - data[1]*data[3]);
            
            BigDecimal a = new BigDecimal(x);
            BigDecimal b = new BigDecimal(y);

            a = a.setScale(3 , BigDecimal.ROUND_HALF_UP);
            b = b.setScale(3 , BigDecimal.ROUND_HALF_UP);
            System.out.println(a + " " + b);

        }
    }
}