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.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        List<Integer> coefficient = new ArrayList<Integer>();
        List<String> answers = new ArrayList<String>();
        while (scanner.hasNext()) {
            for (int i = 0; i < 6; i++) {
                coefficient.add(Integer.parseInt(scanner.next()));
            }
            SimultaneousEquation equation = new SimultaneousEquation(coefficient);
            equation.compute();
            answers.add(String.format("%.3f", equation.getX()) + " " + String.format("%.3f", equation.getY()));

            coefficient.clear();
        }

        for (String answer : answers) {
            System.out.println(answer);
        }
    }

    private static class SimultaneousEquation {
        private double a, b, c, d, e, f, x, y;

        SimultaneousEquation(List<Integer> coefficient) {
            this.a = coefficient.get(0);
            this.b = coefficient.get(1);
            this.c = coefficient.get(2);
            this.d = coefficient.get(3);
            this.e = coefficient.get(4);
            this.f = coefficient.get(5);
        }

        void compute() {
            double denominator = a * e - d * b;
            if (denominator != 0) {
                this.x = (c * e - f * b) / denominator;
                this.y = (a * f - d * c) / denominator;

                if (this.x == 0) {
                    this.x = Math.abs(this.x);
                }
                
                if (this.y == 0) {
                    this.y = Math.abs(this.y);
                }
            }
        }

        double getX() {
            return this.x;
        }

        double getY() {
            return this.y;
        }
    }
}