Go: package main

import (
	"bufio"
	"fmt"
	"os"
	"strconv"
	"strings"
)

func gcd(num1, num2 int) int {
	if num2 == 0 {
		return num1
	}
	num3 := num1 % num2
	return gcd(num2, num3)
}

func lcm(num1, num2 int) int {
	if num1%num2 != 0 {
		num3 := gcd(num1, num2)
		for i := 1; ; i++ {
			check := num3 * i
			if check%num1 == 0 && check%num2 == 0 {
				return check
			}
		}
	} else {
		return num1
	}
}

func main() {
	scanner := bufio.NewScanner(os.Stdin)
	for scanner.Scan() {
		strNums := strings.Fields(scanner.Text())
		nums := []int{}
		for _, strNum := range strNums {
			num, _ := strconv.Atoi(strNum)
			nums = append(nums, num)
		}
		a := nums[0]
		b := nums[1]
		c := nums[2]
		d := nums[3]
		e := nums[4]
		f := nums[5]
		lcm := lcm(a, d)
		mulA := lcm / a
		mulD := lcm / d
		a *= mulA
		b *= mulA
		c *= mulA
		d *= mulD
		e *= mulD
		f *= mulD

		if d < 0 {
			d *= -1
			e *= -1
			f *= -1
		}

		bE := b - e
		cF := c - f
		y := float64(cF) / float64(bE)
		x := (float64(c) - (y * float64(b))) / float64(a)

		if x == 0 {
			fmt.Printf("%.3f ", 0.0)
		} else {
			fmt.Printf("%.3f ", x)
		}
		if y == 0 {
			fmt.Printf("%.3f\n", 0.0)
		} else {
			fmt.Printf("%.3f\n", y)
		}
	}
}

Python: while 1:
    try:a,b,c,d,e,f=map(int,input().split())
    except:break
    x=(c*d-a*f)/(b*d-a*e)
    print("%f %f"%((c-b*x)/a,x))

Python: while True:
    try:
        a,b,c,d,e,f = map(int,input().split())
        x = (c*e - f*b)/(a*e - b*d)
        y = (c*d - f*a)/(b*d - e*a)
        x = round(x,3)
        y = round(y,3)
        print("{0:.3f}".format(x),end = ' ')
        print("{0:.3f}".format(y))
    except EOFError:
        break

Python: import sys
for i in sys.stdin:
    a, b, c, d, e, f = map(int, i.split())
    x = (c * e - b * f) / (a * e - b * d)
    y = (c * d - a * f) / (b * d - a * e)
    x = abs(x) if abs(x) < 10e-4 else x
    y = abs(y) if abs(y) < 10e-4 else y
    print("{:.3f} {:.3f}".format(x, y))

Python: while True:
	try:
		A=[int(j) for j in input().split()]
		a=A[3]/A[0]
		for i in range(3):
			A[i]*=a
		for i in range(3):
			A[i]=A[i]-A[i+3]
		y=A[2]/A[1]
		x=(A[5]-A[4]*y)/A[3]
		print("%f %f"%(x+0,y+0))
	except EOFError:
		break

Python: #ax+by=c
#dx+ey=f
#
#->x=(ce-bf)/(ae-bd),y=(af-cd)/(ae-bd)
#
def maru(f):
	if f>=0:
		sgn="+"
	else:
		sgn="-"
	f=abs(f)
#
	f*=1000
	f_int  =f-f%1
	f_float=f%1
#	
	if f_float>=0.5:
		f_int+=1
	else:
		pass
#
	f=int(f_int)
	if f%1000==0:
		s="000"
	else:
		s=f%1000
	if sgn=="-":
		p="-"+str(f//1000)+"."+str(s)
	else:
		p=str(f//1000)+"."+str(s)
	return p

##########################################
#test_sisyagonyuu
#while True:
#	k=float(input())
#	print("k=",k)
#	print("maru(k)=",maru(k))
##########################################
ans=[]
while True:
	try:
		a,b,c,d,e,f=list(map(float,input().split(" ")))
		if c*e-b*f==0:
			x=0
		else:
			x=(c*e-b*f)/(a*e-b*d)
		if a*f-c*d==0:
			y=0
		else:
			y=(a*f-c*d)/(a*e-b*d)
		ans.append(maru(x)+" "+maru(y))
	except:
		break

for i in ans:
	print(i)

Python: while True:
	try:
		a, b, c, d, e, f = map(float, input().split())
		x = (c*e - b*f) / (a*e - b*d)
		y = (c*d - a*f) / (b*d - a*e)
		print("{:.3f} {:.3f}".format(x, y))
	except EOFError:
		break

Python: while True:
  try:
    a, b, c, d, e, f = map(float, input().split())
  except EOFError:
    break
  print("{0:.3f} {1:.3f}".format((c*e-b*f)/(a*e-b*d)+0,(c*d-a*f)/(b*d-a*e)))

Python: __author__ = 'bisuk'

while True:
    try:
        a, b, c, d, e, f = map(int, input().strip("\n").split(" "))
        # print(a, b, c, d, e, f)
        z = a * e - b * d
        if z == 0:
            break
        x = (c * e - b * f)
        y = (f * a - c * d)
        #print("1st: {0:.3f} {1:.3f} {2:.3f}".format(x, y, z))

        # 0/0.0->False hoka->True
        """if x:
            # x != 0, 0.0 (True)
            x = x / z
        if y:
            y = y / z
        """
        x /= z
        y /= z
        # zero toshite atsukau
        if -0.0004 < x < 0.0004:
            x = abs(x)
        if -0.0004 < y < 0.0004:
            y = abs(y)
        #print(str(x) + " " + str(y) + " " + str(z))
        print("{0:.3f} {1:.3f} {2:.3f}".format(x, y, z))

    except EOFError:
        break  # escape from while loop

Python: def main():
    while True:
        try:
            IN=input()
            val=IN.split(" ")
            a=float(val[0])
            b=float(val[1])
            c=float(val[2])
            d=float(val[3])
            e=float(val[4])
            f=float(val[5])

            x=(c*e-b*f)/(a*e-b*d)
            y=(c*d-a*f)/(b*d-a*e)

            print("{0:.3f} {1:.3f}".format(x,y))
        except:
            break

Python: while 1:
    try:
        a,b,c,d,e,f=[int(i) for i in input().split()]

        y=float((c*d-f*a)/(b*d-e*a))
        x=float((c-b*y)/a)
        print("{0:.4f}".format(x),"{0:.4f}".format(y))
    except EOFError:
        break

Python: def get_input():
    while True:
        try:
            yield ''.join(input())
        except EOFError:
            break

input_list = list(get_input()) # [a1, a2, a3, ...]


for line in input_list:
    a, b, c, d, e, f = list(map(int, line.split()))

    delta = (a*e - b*d)
    x = 1/delta * (e*c - b*f)
    y = 1/delta * (-d*c + a*f)

    print("%.3f %.3f"%(x, y))

Python: import argparse
  
parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('n', nargs='+', type=int, action='store')
args = parser.parse_args()

a = args.n[0]
b = args.n[1]
c = args.n[2]
d = args.n[3]
e = args.n[4]
f = args.n[5]

x = abs((c * e) - (f * b)) / abs((b * d) - (a * e))
y = abs((c * d) - (f * e)) / abs((b * d) - (a * e))
print('{} {}'.format(x, y))

Python: for i in range(2):
    a,b,c,d,e,f = map(float,input().split())
    n = a*e-b*d
    x = round((e*c-b*f)/n,3)
    y = round((a*f-d*c)/n,3)
    if x == -0:
        x = 0
    if y == -0:
        y = 0
    print("{0:.3f}".format(x),"{0:.3f}".format(y))

Python: a, b, c, d, e, f=map(float,input().split())
k=(a*e)-(b*d)
xval=(c*e)-(b*f)
yval=(a*f)-(c*d)
print("%.3f %.3f"%(xval/k,yval/k))

Python: # Vol0004.
import sys

def main():
    data = []
    lines = sys.stdin.readlines()

    for line in lines:
        data.append(line.split())  # スペース区切りで放り込む
    # ax + by = c, dx + ey = fの解は、
    # x = (ce - bf) / (ae - bd), y = (af - cd) / (ae - bd).
    # これをround(float, 3)すれば答えが出る。
    N = len(data)
    for i in range(N):
        for k in range(6):
            data[i][k] = int(data[i][k])
        det = data[i][0] * data[i][4] - data[i][1] * data[i][3]
        gx = data[i][2] * data[i][4] - data[i][1] * data[i][5]
        gy = data[i][0] * data[i][5] - data[i][2] * data[i][3]
        print(str(round(gx / det, 3)) + " " + str(round(gy / det, 3)))

if __name__ == "__main__":
    main()

Python: while True:
    try:
        a, b, c, d, e, f = map(float, input().split())
        n = a*e - b*d
        if n != 0:
            x = (c*e - b*f) / n
            y = (a*f - c*d) / n
        print('{:.3f} {:.3f}'.format(x+0, y+0))
    except:
        break

Python: import sys

for line in sys.stdin:
    a,b,c,d,e,f=list(map(int,input().split()))
    x=(c*e-b*f)/(a*e-b*d)
    y=(a*f-c*d)/(a*e-b*d)
    print("{0:.3f} {1:.3f}".format(x,y))

Python: import numpy as np

Python: # coding: utf-8

while True:
	try:
		data = map(int, raw_input().split())
		a = data[0]
		b = data[1]
		c = data[2]
		d = data[3]
		e = data[4]
		f = data[5]

		x = (c*e-b*f)*1.0 / (a*e-b*d)
		if x == -0.000:
			x = 0.000
		if b != 0:
			y = (c-a*x)/b
		else:
			y = (f-d*x)/e
		if y == -0.000:
			y = 0.000

		print("{:.3f} {:.3f}".format(x,y))
	except EOFError:
		break