Problem:
 Score : 300 points    Problem Statement There is a rectangle in a coordinate plane. The coordinates of the four vertices are (0,0) , (W,0) , (W,H) , and (0,H) .
You are given a point (x,y) which is within the rectangle or on its border. We will draw a straight line passing through (x,y) to cut the rectangle into two parts. Find the maximum possible area of the part whose area is not larger than that of the other. Additionally, determine if there are multiple ways to cut the rectangle and achieve that maximum.      Constraints  1 \leq W,H \leq 10^9  0\leq x\leq W  0\leq y\leq H  All values in input are integers.         Input Input is given from Standard Input in the following format:  W  H  x  y       Output Print the maximum possible area of the part whose area is not larger than that of the other, followed by 1 if there are multiple ways to cut the rectangle and achieve that maximum, and 0 otherwise.  The area printed will be judged correct when its absolute or relative error is at most 10^{-9} .        Sample Input 1 2 3 1 2      Sample Output 1 3.000000 0  The line x=1 gives the optimal cut, and no other line does.       Sample Input 2 2 2 1 1      Sample Output 2 2.000000 1

Solution (Python):
w,h,x,y=map(int,input().split())

ans1=w*h/2
if w/2==x and h/2==y:
    a=1
else:
    a=0
print(ans1,a)

Solution (Python):
w, h, x, y = map(float, input().split())
cx = w / 2
cy = h / 2
area = w * h / 2
if cx==x and cy==y:
    print('{} {}'.format(area, 1))
else:
    print('{} {}'.format(area, 0))

Solution (Python):
W,H,x,y = map(int,input().split(" "))

if (float(x) == W/2) and (float(y) == H/2):
    print(W*H/2.0000,1)
else:
    print(W*H/2.0000,0)

Solution (Python):

w, h, x, y = map(int, input().split())

ans = w*h/2
num = 1 if (w== x*2 and h==y*2) else 0
print(ans, num)

Solution (Python):
w, h, x, y = (int(i) for i in input().split())
print((w*h)/2,1 if 2*x == w and 2*y == h else 0)

Solution (Python):
W,H,x,y = list(map(int,input().split()))

if x == W / 2 and y == H / 2:
    print(W*H/2 , 1)
else:
    print(W*H/2 , 0)

Solution (Python):
w,h,x,y = map(int,input().split())
s = float(w*h/2)
if x == (w/2) and y == (h/2):
  k = 1
else:
  k = 0
print(s,k)

Solution (Python):
def main():
    tmp = list(map(int, input().split(" ")))
    w = tmp[0]
    h = tmp[1]
    x = tmp[2]
    y = tmp[3]
    p = (x, y)
    if is_gusu(w) and is_gusu(h):
        center = (w // 2, h // 2)
    else:
        center = (-1, -1)

    if is_equal(p, center):
        print("{} 1".format(w*h / 2))
        return
    else:
        print("{} 0".format(w*h/2))


def is_equal(p, center):
    return p[0] == center[0] and p[1] == center[1]


def is_gusu(a):
    return a % 2 == 0


main()

Solution (Python):
W, H, x, y = map(int, input().split())
if (2*x == W) and (2*y == H):
  center = 1
else:
  center = 0
print('{:.6f}'.format(W*H/2), center)

Solution (Python):
w,h,x,y = map(int,input().split())

if w/2 == x and h/y == 2:
    print(w*h/2,"1")
else:
    print(w*h/2,"0")

Solution (Python):
w, h, x, y = map(int, input().split())
ans2 = ''
if (w == x*2) & (h == y*2):
    ans2 = 1
else:
    ans2 = 0
print('{} {}'.format(w*h/2, ans2))

Solution (Python):
w, h, x, y = map(int, input().split())
print(w * h / 2, int(w == x * 2 and h == y * 2))

Solution (Python):
W, H, x, y = map(int, input().split())
print(W*H/2, '1') if x*2==W and y*2==H else print(W*H/2, '0')

Solution (Python):
w, h, x, y = map(int, input().split())
flag = 0
if w == 2*x and h == 2*y:
  flag = 1
print(w*h/2, flag)

Solution (Python):
w,h,x,y=[int(i) for i in input().split()]
print(w*h/2,end=" ")
if w/2==float(x) and h/2==float(y):
    print(1)
else:
    print(0)

Solution (Python):
import fractions

w, h, x, y = list(map(int, input().split()))

res1 = w * h / 2

res2 = 0
if x == w / 2 and y == h / 2:
    res2 = 1

print(str(res1) + ' ' + str(res2))

Solution (Python):
W,H,x,y=map(int,input().split())

s=W*H/2

if W/2==x and H/2==y:
    f=1
else:
    f=0
print("{} {}".format(s,f))

Solution (Python):
w,h,x,y = map(int,input().split())
ans = (w*h)/2
if x == w/2 and y == h/2:
    print(ans,1)
else:
    print(ans,0)

Solution (Python):
w, h, x, y = map(int,input().split())
area=w*h/2
awee=0
if x==w/2 or y==h/2:
    awee=0
    if x==w/2 and y==h/2:
        awee=1
else:
    awee=0

print(str(area)+" "+str(awee))

Solution (Python):

w, h, x, y = [int(el) for el in input().split(' ')]
s = w * h / 2
if x == w/2 and y == h/2:
    t = 1
else:
    t = 0
print('{} {}'.format(s, t))

Solution (Python):
W,H,x,y = map(int,input().split())
flag = 0 
if x * 2 == W and y * 2 == H:
    flag = 1
print("{} {}".format(W*H/2,flag))

Solution (Python):
w, h, x, y = map(int, input().split())
print(w * h / 2, 1 if x * 2 == w and y * 2 == h else 0)

Solution (Python):
W, H, x, y = [int(i) for i in input().split()]

area = W * H / 2
f = 0
if x == W / 2 and y == H / 2:
    f = 1
    
print(area, f)

Solution (Python):
w,h,x,y = map(int,input().split())

if w/2 == x and h/2 == y:
	print(w*h/2, 1)
else:
	print(w*h/2, 0)

Solution (Python):

w,h,x,y=map(int,input().split())
res=w*h/2
j=((w/2==x) and (h/2)==y)
if j:
	print(res,1)
else:
	print(res,0)

Solution (Python):
W,H,x,y = map(int,input().split())

M = W*H/2
if 2*x == W and 2*y == H:
    print(M,1)
else:
    print(M,0)

Solution (Python):

def getint(): return int(input())
def getints(): return list(map(int, input().split()))

W,H,x,y=getints()

is_center = 2 * x == W and 2 * y == H
area = W * H / 2


print(area, 1 if is_center else 0)

Solution (Python):
w,h,x,y = map(float,input().split())

if x == w/2 and y == h/2:
    print(w*h/2 , 1)
else:
    print(w*h/2 , 0)

Solution (Python):
w, h, x, y=map(int,input().split())
area=w*h*0.5

if x*2==w and y*2==h:
    print(area, 1)
else:
    print(area, 0)

Solution (Python):
w,h,x,y= map(int, input().split())

k = 0
if x == w/2 or y == h/2:
    k = 0
if x == w/2 and y == h/2:
    k = 1

print("%f %d" %(w*h/2, k))

Solution (Python):
if __name__ == '__main__':
    w,h,x,y = map(int,input().split())
    if x + x == w and y + y == h:
        a = 1
    else:
        a = 0

    print("%f %d" %(w*h/2, a))

Solution (Python):
w,h,x,y=map(int,input().split())
if x==w/2 and y==h/2:
  print(w*h/2,1)
else:
  print(w*h/2,0)

Solution (Python):
W, H, x, y = map(int, input().split())

S = W * H / 2
print(S, end=" ")

if x == W/2 and y == H/2:
    print(1)
else:
    print(0)

Solution (Python):
w,h,x,y = map(int,input().split())

are=w*h/2
pat=0

if x==w/2 and y==h/2:
	pat=1

print(are,pat)

Solution (Python):
W, H, x, y = map(int,input().split())
area = W*H/2
a = [1 if 2 * x == W and 2 * y == H else 0]
print(area, a[0])

Solution (Python):
W, H ,x, y = map(int, input().split())
if x == W/2 and y == H/2:
    print(W*H/2, 1)
else:
    print(W*H/2, 0)

Solution (Python):
W, H, x, y = map(int, input().split())

s = "{0:.6f}".format(float(W*H/2))

if x == W / 2 and y == H / 2:
    print(s, 1)
else:
    print(s, 0)

Solution (Python):

W, H, x, y = map(int, input().split())
Amax = W * H / 2
judge = 0

if x == W / 2 and y == H / 2:
	judge = 1

print(Amax, judge)

Solution (Python):
def solve():
    w, h, x, y = map(int, input().split())
    is_center = 1 if x == w / 2 and y == h / 2 else 0
    print(w * h / 2, is_center)


if __name__ == "__main__":
    solve()

Solution (Python):
W, H, x, y = (int(i) for i in input().split())
if x==W/2 and y==H/2:
  print(W*H/2, 1)
else:
  print(W*H/2, 0)

Solution (Python):
W,H,x,y=map(int,input().split())
print(W*H/2,end=' ')
if x==W/2 and y==H/2:
	print('1')
else:
	print('0')

Solution (Python):
import sys,math
W,H,x,y = map(int,input().split())
if W/2 == x and H/2 == y:
    print(W*H/2,'1')
else:
    print(W*H/2,'0')

Solution (Python):
w,h,x,y=map(int,input().split())
a=w*h/2
if w==x*2 and h==y*2:b=1
else:b=0
print(a,b)

Solution (Python):
w,h,x,y= map(int, input().split())

s=w*h/2
if x==w/2 and y==h/2:
    m=1
else:
    m=0

print(s,m)

Solution (Python):
w,h,x,y=map(int,input().split())
print("%f %d"%(w*h/2,int((x*2==w)&(y*2==h))))

Solution (Python):
W, H, x, y = map(int,input().split())


if x == W / 2 and y == H / 2:
	print(W * H / 2 ,1)
else:
	print(W * H / 2 ,0)

Solution (Python):
W, H, x, y = map(int,input().split())
t = 0
if W/2 == x and H/2 == y:
    t = 1
print((W*H)/2,t)

Solution (Python):


def maxArea(a, b):
    return a * b / 2

def isMultiple(a, b, x, y):
    return 1 if 2 * x == a and 2 * y == b else 0

def main():
    a, b, x, y = list(map(int, input().split()))
    print("{0} {1}".format(maxArea(a, b), isMultiple(a, b, x, y)))

if __name__ == '__main__':
    main()

Solution (Python):
W,H,x,y=map(int,input().split())
if W/2==x and H/2==y:
    print(*[W*H/2,1])
else:
    print(*[W*H/2,0])

Solution (Python):


W, H, x, y = map(int, input().split())

size = W * H / 2
if x == W / 2 and y == H / 2:
    print(size, 1)
else:
    print(size, 0)

Solution (Python):
[w,h,x,y]=[int(x) for x in input().split()]
a=(w*h)/2
if w%2==0 and h%2==0 and x==w/2 and y==h/2:
    print('%.6f'%a,1)
else:print('%.6f'%a,0)

Solution (Python):
w,h,x,y = map(int, input().split())
if x == w/2 and y == h/2:
    print(0.5*w*h ,1)
else:
    print(0.5*w*h ,0)

Solution (Python):
w,h,x,y = map(int,input().split())
saidai = (w*h)/2
if x == w/2 and y == h/2:
  kano = "1"
else:
  kano = "0"
print(saidai,kano)

Solution (Python):
def main():
    w, h, x, y = list(map(int, input().split()))
    print(w * h / 2, 1 if x == (w / 2) and y == (h / 2) else 0)


main()

Solution (Python):
W,H,x,y = map(int, input().split())
flag = 0
S = W*H/2

if W/2 == x and H/2 == y:
    flag = 1
print("{} {}".format(S,flag))

Solution (Python):
def main():
    W, H, x, y = map(float, input().split())
    area = W * H / 2
    p = 0
    if x * 2 == W and y * 2 == H:
        p = 1
    print(area, p)

if __name__ == '__main__':
    main()

Solution (Python):
W, H, x, y = [int(v) for v in input().split()]

w = W / 2
h = H / 2
e = 10 ** (-9)
flg = w - e <= x <= w + e and h - e <= y <= h + e

print(W * H / 2, int(flg))

Solution (Python):
w,h,x,y=map(int, input().split())
m=0

if x==w/2 and y==h/2:
    m=1
print(w*h/2,m)

Solution (Python):
w, h, x, y = list(map(int, input().split()))

print(w*h/2)
if x == w/2 and y == h/2:
    print(1)
else:
    print(0)

Solution (Python):
w, h, x, y = [int(i) for i in input().split()]
print(w*h/2, 1 if w/2==x and h/2==y else 0)

Solution (Python):
w, h, x, y = [int(i) for i in input().split()]
if w/2==x and h/2==y:
    print(w*h/2, 1)
else:
    print(w*h/2, 0)

Solution (Python):
w,h,x,y = map(float, input().split())
print('{:.6f} {}'.format(float(w)*float(h)/2, int(x+x==w and y+y==h)))

Solution (Python):
w,h,x,y = map(int, input().split())
if x==(w/2) and y==(h/2):
    print((w*h)/2,1)
elif x==(w/2) or y==(h/2) or y==(h/w)*x or y==(-1*(h/w)*x+h):
    print((w*h)/2,0)
else:
    print((w*h)/2,0)

Solution (Python):
w, h, x, y = [int(i) for i in input().split()]
area = w*h

print("{:.9f}".format(area/2),end=" ")

if 2*x == w and 2*y == h:
  print(1)
else:
  print(0)

Solution (Python):
temp=input().split()
W=int(temp[0])
H=int(temp[1])
x=int(temp[2])
y=int(temp[3])

S=W*H/2
if W/2==x and H/2==y:
  w=int(1)
else:
  w=int(0)
  
print(S, w)

Solution (Python):
w, h, x, y = list(map(int, input().split()))

center_x = w / 2
center_y = h / 2

if center_x == x and center_y == y:
    ans_b = 1
else:
    ans_b = 0

ans_a = w * h / 2

print('{} {}'.format(ans_a, ans_b))

Solution (Python):
def iread():
    return int(input())


def sread():
    return input()


def aread_int():
    tmp = input().split()
    ret = [int(i) for i in tmp]
    return ret


def aread_str():
    return input().split()


if __name__ == '__main__':
    w, h, x, y = map(int, input().split())
    if x == w / 2 and y == h / 2 :
        print(h * w / 2, 1)
    else :
        print(h * w / 2, 0)

Solution (Python):
W, H, x, y = map(int, input().split())
a = W * H / 2
if x == W / 2 and y == H / 2:
    print(a, 1)
else:
    print(a, 0)

Solution (Python):
w, h, x, y = map(int, input().split())
a = w * h / 2
p = 1 if (x * 2 == w) and (y * 2 == h) else 0
print('{} {}'.format(a, p))

Solution (Python):
w, h, x, y = list(map(int, input().split(' ')))
if w/2== x and h/2==y:
    print(w*h/2,1)
else:
    print(w*h/2,0)

Solution (Python):
w,h,x,y = map(int,input().split())
ans = w * h / 2
if w/2 == x and h/2 == y:
  print(ans,1)
else:
  print(ans,0)

Solution (Python):
w, h, x, y = (int(i) for i in input().split())  
if (w == 2*x) and (h == 2*y):
    print(str(0.5*w*h)+" "+str(1))
else:
    print(str(0.5*w*h)+" "+str(0))

Solution (Python):
w, h, x, y = map(int, input().split())

if x == w / 2 and y == h / 2:
    print(w * h / 2, 1)
else:
    print(w * h / 2, 0)

Solution (Python):
w, h, x, y = [int(e) for e in input().split()]
area = (w*h)/2
ans = '1' if w==x*2 and h==y*2 else '0'
print(area, ans)

Solution (Python):
W, H, x, y =map(int,input().split())
if x == W/2 and y==H/2:
    print(W*H/2,1)
else:
    print(W*H/2,0)

Solution (Python):
w, h, x, y = map(int, input().split())
if x == w / 2 and y == h / 2:
    print(h * w / 2, 1)
else:
    print(h * w / 2, 0)

Solution (Python):
w,h,x,y = map(int,input().split())
a = w*h/2
if x*2==w and y*2==h:
    b = 1
else:
    b = 0
print(a,b)

Solution (Python):
W, H, x, y = list(map(int, input().split()))
square = (W * H) / 2
cnt = '0'
if x + x == W and y + y == H:
    cnt = '1'
print(square, cnt)

Solution (Python):
w,h,x,y=[int(i) for i in input().split()]


print((w*h)/2,end=' ')
if(x+x==w and y+y==h):
    print(1)
else:
    print(0)

Solution (Python):
a, b, c, d = map(int, input().split())
if c * 2 == a and d * 2 == b:
    print(a * b / 2, 1)
else:
    print(a * b / 2, 0)

Solution (Python):
w,h,x,y = map(int, input().split())



if 2*x == w and 2*y == h:
    a = 1
else:
    a = 0
    
print("{} {}".format((w*h/2),a))

Solution (Python):


import sys


tmp = input().split()
hoge = list(map(lambda a: int(a), tmp))
w=hoge[0]
h=hoge[1]
x=hoge[2]
y=hoge[3]

if(2*x==w)and(2*y==h):
	ans=1
else:
	ans=0
print("{} {}".format((w*h/2),ans))

Solution (Python):
import numpy as np

W, H, x, y = [int(x) for x in input().split(" ")]
max_area =  W * H / 2.0
eps = 1e-6
if x + x == W and y + y == H:
    flag = 1
else:
    flag = 0

print(max_area, flag)

Solution (Python):
def main():
    W, H, x, y = list(map(int, input().split()))
    if (x == W/2 and y == H/2):
        is_uniq = 1
    else:
        is_uniq = 0
    print(W * H /2, is_uniq)

main()

Solution (Python):
w, h, x, y = map(int, input().split())
print(w*h/2., int(w/2.==x and h/2.==y) )

Solution (Python):

w, h, x, y = map(int, input().split())
ans1 = (w * h) / 2.0
ans2 = 1 if w / 2 == x and h / 2 == y else 0
print(ans1, ans2)

Solution (Python):
from copy import *
from sys import *
import math
import queue
from collections import defaultdict,Counter,deque
from fractions import Fraction as frac

setrecursionlimit(1000000)


def main():
	a,b,c,d = map(int,input().split())
	i = 1 if a/2 == float(c)  and b/2 == float(d) else 0
	print('{} {}'.format(a*b/2,i))


def zip(a):
	mae = a[0]
	ziparray = [mae]
	for i in range(1,len(a)):
		if(mae != a[i]):
			ziparray.append(a[i])
			mae = a[i]
	return ziparray

def is_prime(n):
	if n < 2: return False

	for k in range(2, int(math.sqrt(n)) + 1):
		if n % k == 0:
			return False

	return True

def list_replace(n,f,t):
	return [t if i==f else i for i in n]

def base_10_to_n(X, n):
	X_dumy = X
	out = ''
	while X_dumy>0:
		out = str(X_dumy%n)+out
		X_dumy = int(X_dumy/n)
	if(out == ''): return '0'
	return out

def gcd(m,n):
	x = max(m,n)
	y = min(m,n)
	while(x%y!=0):
		z = x%y
		x = y
		y = z
	return y

class Queue():
	def __init__(self):
		self.q = deque([])
	def push(self,i):
		self.q.append(i)
	def pop(self):
		return self.q.popleft()
	def size(self):
		return len(self.q)
	def debug(self):
		return self.q

class Stack():
	def __init__(self):
		self.q = []
	def push(self,i):
		self.q.append(i)
	def pop(self):
		return self.q.pop()
	def size(self):
		return len(self.q)
	def debug(self):
		return self.q

class graph():
	def __init__(self):
		self.graph = defaultdict(list)
	def addnode(self,l):
		f,t = l[0],l[1]
		self.graph[f].append(t)
		self.graph[t].append(f)
	def rmnode(self,l):
		f,t = l[0],l[1]
		self.graph[f].remove(t)
		self.graph[t].remove(f)
	def linked(self,f):
		return self.graph[f]

class dgraph():
	def __init__(self):
		self.graph = defaultdict(set)
	def addnode(self,l):
		f,t = l[0],l[1]
		self.graph[f].append(t)
	def rmnode(self,l):
		f,t = l[0],l[1]
		self.graph[f].remove(t)
	def linked(self,f):
		return self.graph[f]

main()

Solution (Python):
W, H, x, y = map(int,input().split())
ans1 = (W * H) / 2
if x == W/2 and y == H/2:ans2 = 1
else:ans2 = 0

print(ans1,ans2)

Solution (Python):
W, H, x, y = map(int, input().split())
ans1 = (W*H)/2

if x == W/2 and y ==H/2:
    ans2 = 1
else:
    ans2 = 0

print(str(ans1) + ' ' + str(ans2))

Solution (Python):
w, h, x, y = map(int, input().split())

if x * 2 == w and y * 2 == h:
    print('{} 1'.format(w*h/2))
else:
    print('{} 0'.format(w*h/2))

Solution (Python):
W, H, x, y = [int(_) for _ in input().split()]

area = W * H / 2
if (W == 2 * x and H == 2 * y):
    print(area, 1)
else:
    print(area, 0)

Solution (Python):
w, h, x, y = map(int, input().split())

mw, mh= (w/2, h/2)

if mw == x and mh == y:
  print(w*h/2, 1)
else:
  print(w*h/2, 0)

Solution (Python):
w,h,x,y=map(int,input().split())

if x==w/2 and y==h/2:
    print(w*h/2, 1)
else:
    print(w*h/2, 0)

Solution (Python):
w,h,x,y = map(int, input().split())
if x * 2 == w and y * 2 == h:
    tmp = 1
else:
    tmp = 0
print("{:.10f} {}".format(w*h / 2, tmp))

Solution (Python):
w,h,x,y = map(int, input().split())
if x * 2 == w and y * 2 == h:
    tmp = 1
else:
    tmp = 0
print("{:.10f} {}".format(w*h / 2, tmp))

Solution (Python):
W,H,x,y = map( int, input().split() )

exist = 0

if x == W/2 and y == H/2:
    exist = 1

print( W*H/2, exist )

Solution (Python):
W, H, x, y = map(int, input().split())
if x*2 == W and y*2 == H:
	print(W*H/2, 1)
else:
	print(W*H/2, 0)

Solution (Python):
w,h,x,y = map(int,input().split())
if x == w/2 and y == h/2:
    print(w*h/2, 1)
else:
    print(w*h/2, 0)

Solution (Python):
w,h,x,y = map(int,input().split())

Multi = 0

if w == x * 2 and h ==  y * 2:
    Multi = 1

print('{} {}'.format(w*h/2,Multi))

Solution (Python):
w, h, x, y = map(int, input().split())
if x == w/2 and y == h/2:
  s = 1
else:
  s = 0
  
print(w*h/2, s)

Solution (Python):
import math, string, itertools, fractions, heapq, collections, re,  array, bisect, sys, random, time, copy, functools
sys.setrecursionlimit(10**7)
inf = 10 ** 20
eps = 1.0 / 10**10
mod = 10**9+7
dd = [(-1, 0), (0, 1), (1, 0), (0, -1)]
ddn = [(-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1), (-1, -1)]
def LI(): return [int(x) for x in sys.stdin.readline().split()]
def LI_(): return [int(x)-1 for x in sys.stdin.readline().split()]
def LF(): return [float(x) for x in sys.stdin.readline().split()]
def LS(): return sys.stdin.readline().split()
def _I(): return int(sys.stdin.readline())
def _F(): return float(sys.stdin.readline())
def _pf(s): return print(s, flush=True)

W, H, x, y = LI()

'''
どこの点が与えられても、縦、横、四隅の点とむすんで面積を確認する
対角で面積が同じ場合は、2分割を意味する
正方形の場合、絶対半分にでき、原点の場合は複数個線を作れる

長方形の場合、原点の場合は複数個可能で、それ以外の場合は無理
'''

if W == H:
    
    print(W*H/2, end=' ')
    if x == y == W/2:
        print(1)
    else:
        print(0)
else:
    
    if x == W/2 and y == H/2:
        print(W*H/2, 1)
    else:
        
        
        
        
        
        
        

        
        
        
        
        

        
        print(W*H/2, 0)

Solution (Python):
a,b,c,d=map(int,input().split())
print(a*b/2.0,int((a==c*2)&(b==d*2)))

Solution (Python):


def solve():
    W, H, x, y = list(map(int, input().split()))
    ans = W*H/2
    is_separate = 0
    if x==W/2 and y==H/2:
        is_separate = 1
    print(ans, is_separate)


if __name__ == "__main__":
    solve()

Solution (Python):
w,h,x,y = map(int, input().split())
s = w / 2 * h 
num = 0
if x == w/2 and y == h/2:
    num = 1
    
print('%.6f'%s,end=' ')
print(num)

Solution (Python):
W, H, x, y = map(int, input().split())

ans1 = (W * H) / 2

if x == W/2 and y == H/2:
    ans2 = 1
else:
    ans2 = 0

print(ans1, ans2)

Solution (Python):
W,H,x,y = map(int,input().split())
if x == W/2 and y == H/2:
  print(W*H/2,1)
else:
  print(W*H/2,0)

Solution (Python):
W, H, x, y = map(int, input().split())
half_area = float(float(W) * (H) * .5)
if float(x) == float(W/2) and float(y) == float(H/2):
  multi = 1
else: 
  multi = 0
print(half_area, multi)

Solution (Python):
w, h, x, y = map(int, input().split(" "))

smax = w*h/2
if x == w/2 and y == h/2:
  print(str(smax) + " 1")
else :
  print(str(smax) + " 0")

Solution (Python):
W, H, x, y = map(int, input().split())
if x*2 == W and y*2 == H: c = 1
else: c = 0
print("%.6f %d" % (float(W*H/2),c))

Solution (Python):
w,h,x,y=map(int,input().split())

if x==w/2 and y==h/2:
    b=1
else:
    b=0



print(w*h/2, b)

Solution (Python):
W, H, x, y = map(int, input().split())

ans = W * H / 2
if x == W / 2 and y == H / 2:
    ans1 = 1
else:
    ans1 = 0
print("{} {}".format(ans, ans1))

Solution (Python):
w,h,x,y=(map(int,input().split()))


if(x+x==w and y+y==h):
		print(w*h/2,1)
else:
	print(w*h/2,0)

Solution (Python):
W, H, x, y = map(int, input().split())

print(W * H / 2, 1 if W / 2 == x and H / 2 == y else 0)

Solution (Python):
w,h,x,y = map(int,input().split())
print(w*h/2,int(x*2 == w and y*2 == h))

Solution (Python):
w,h,x,y = map(int,input().split())
print(w*h/2,int(x*2 == w and y*2 == h))

Solution (Python):
w, h, x, y = list(map(int, input().split()))

print(w * h / 2, end=' ')
if w / 2 == x and h / 2 == y:
    print(1)
else:
    print(0)

Solution (Python):
W, H, x, y =  map(int, input().split())

print("{0} {1}".format(W * H / 2, 1 if x == W / 2 and y == H / 2 else 0))

Solution (Python):
W,H,x,y=map(int,input().split())
print(W*H/2)
if x==W/2 and y==H/2:
    print('1')
else:
    print('0')

Solution (Python):
W,H,x,y = list(map(int,input().split()))
z1 = 0.5*W*H

if x==0.5*W and y==0.5*H:
  z2 = 1
else:
  z2 = 0

print(z1,z2)

Solution (Python):
def C_RectangleCutting():
    W,H,x,y = map(int, input().split())
    print(0.5*W*H, 1*((0.5*W == x) and (0.5*H == y)))
    
if __name__ == "__main__":
    C_RectangleCutting()

Solution (Python):
W,H,x,y = map(int,input().split())

if x*2 == W and y*2 == H:
	print(W*H/2 , "1")
else:
	print(W*H/2 , "0")

Solution (Python):

w, h, x, y = map(int, input().split())


if x == w/2 and y == h/2:
    print((w*h)/2, 1)
else:
    print((w*h)/2, 0)

Solution (Python):
X, Y, x, y =map(int, input().split())

if x*2==X and y*2 ==Y:
    print(X*Y/2, 1)
else:
    print(X*Y/2, 0)

Solution (Python):
W,H,x,y = map(int,input().split())

menseki = W*H/2
if x==W/2 and y==H/2:
    ans = 1
else:
    ans = 0
print(menseki,ans)

Solution (Python):
W,H,x,y = [int(s) for s in input().split()]
if(2*x==W and 2*y==H):
  print(2*x*y,1)
else:
  print(W*H/2,0)

Solution (Python):
W, H, x, y = map(int,input().split())
print(W*H/2)
if x == W/2 and y == H/2:
  print(1)
else:
  print(0)

Solution (Python):
W,H,x,y = map(int,input().split())

if x==W/2 and y==H/2:
    print(W*H/2,1)
else:
    print(W*H/2,0)

Solution (Python):
a,b,c,d=map(float,input().split())
if a/2==c and b/2==d:
  y=1
else:
  y=0

  
print(str((a*b)/2)+" "+str(y))

Solution (Python):
w,h,x,y = map(int, input().split())
jadge = 1 if x == w/2 and y == h/2 else 0
print((w*h)/2,jadge)

Solution (Python):
W,H,x,y = map(int,input().split())



if x==W/2 and y==H/2:
    j=1
else:
    j=0

print(W*H/2,j)

Solution (Python):
w, h, x, y = map(float, raw_input().split())
if w-x == x and y == h - y:
    mul = "1"
else:
    mul = "0"
print w*h/2, mul

Solution (Python):


def solve():
    W, H, x, y = list(map(int, input().split()))

    
    area_ans = W*H/2

    
    

    if x==W/2 and y==H/2:
        is_sep = 1
    else:
        is_sep = 0
    
    print(area_ans, is_sep)


if __name__ == "__main__":
    solve()

Solution (Python):
W, H, x, y = tuple([int(s) for s in input().split()])
S = W * H / 2
flag = 1 if (W % 2 == 0 and H % 2 == 0 and W // 2 == x and H // 2 == y) else 0
print("{0} {1}".format(S, flag))

Solution (Python):
W,H,x,y=map(int,input().split())
print(W*H/2, end=' ')
if x==W/2 and y==H/2:
    print(1)
else:
    print(0)

Solution (Python):
W, H, x, y = map(int, input().split())


area_max = (W * H) / 2


divide = 1 if (x == W/2 and y == H/2) else 0

print(area_max, divide)

Solution (Python):
W, H, x, y = list(map(int, input().split()))
flag = 0

if x == W/2 and y == H/2:
    flag = 1
    
print(str(W*H/2) + ' ' +str(flag))

Solution (Python):
W, H, x, y = map(int, input().split())
ans_S = W * H / 2
ans_n = 1 if W == 2*x and H == 2*y else 0
print(ans_S, ans_n)

Solution (Python):
W, H, x, y = map(int, input().split())
cx, cy = W/2, H/2
ans_S = W * H / 2
ans_n = 1 if x==cx and y==cy else 0
print(ans_S, ans_n)

Solution (Python):
W, H, x, y = map(int, input().split())

area = W*H/2

if x*2 == W and y*2 == H:
  m = 1
else:
  m = 0
  
print(str(area) + ' ' + str(m))

Solution (Python):
w,h,x,y = map(int, input().split())
ans = (w*h)/2
if x == w/2 and y == h/2:
    print(ans,1)
else: print(ans,0)

Solution (Python):

W, H, x, y = map(int, input().split())
if (x*2 == W and y*2 == H):
    print(W*H/2,1)
else:
    print(W*H/2,0)

Solution (Python):
W, H, x, y = map( int, input().split())

if not ( x == W/2 and y == H/2):
  print(W*H/2, 0)
  
else:
  print(W*H/2,1)

Solution (Python):
W,H,x,y = map(int,input().split())
if 2*x==W and 2*y==H:
    print(W*H/2,1)
else:
    print(W*H/2,0)

Solution (Python):
a, b, c, d = map(int, input().split())
if a == c * 2 and b == d * 2:
    print(str(a * b / 2) + " 1")
else:
    print(str(a * b / 2) + " 0")

Solution (Python):
w, h, x, y = map(int, input().split())

if w/2==x and h/2==y:
  print(w*h/2.0, 1)
else:
  print(w*h/2.0, 0)

Solution (Python):
W, H, x, y = map(int, input().split())
S = W*H/2
if x*2 == W and y*2 == H:
  print(S, 1)
else:
  print(S, 0)

Solution (Python):
w, h, x, y = (int(i) for i in input().split())
S = w * h / 2
a = 0
if x*2 == w and y*2 == h:
  a = 1
print(S, a)

Solution (Python):
w, h, x, y = map(int, input().split())
print(w * h / 2, int(w / 2 == x and h / 2 == y))

Solution (Python):
w, h, x, y = map(int, input().split())
print(w * h / 2, 1 if x == w / 2 and y == h / 2 else 0)

Solution (Python):
w,h,x,y = map(int, input().split())

min_max_area = w*h/2
num = 1 if x+x == w and y+y == h else 0
print("{} {}".format(min_max_area, num))

Solution (Python):
W, H, x, y = map(int,input().split())
hantei = 0
if (x != 0) and (y != 0):
    if (W/2 == x) and (H/2 == y):
        hantei = 1
print("{0} {1}".format(W*H/2, hantei))

Solution (Python):
from collections import defaultdict, Counter
from itertools import product, groupby, count, permutations, combinations
from math import pi, sqrt
from collections import deque
from bisect import bisect, bisect_left, bisect_right
from string import ascii_lowercase
from functools import lru_cache
import sys
sys.setrecursionlimit(10000)
INF = float("inf")
YES, Yes, yes, NO, No, no = "YES", "Yes", "yes", "NO", "No", "no"
dy4, dx4 = [0, 1, 0, -1], [1, 0, -1, 0]
dy8, dx8 = [0, -1, 0, 1, 1, -1, -1, 1], [1, 0, -1, 0, 1, 1, -1, -1]


def inside(y, x, H, W):
    return 0 <= y < H and 0 <= x < W


def ceil(a, b):
    return (a + b - 1) // b



def sum_of_arithmetic_progression(s, d, n):
    return n * (2 * s + (n - 1) * d) // 2



def gcd(a, b):
    if b == 0:
        return a
    return gcd(b, a % b)



def lcm(a, b):
    g = gcd(a, b)
    return a / g * b


def main():
    W, H, x, y = map(int, input().split())

    area = W * H / 2.0
    ans = 0
    if 2 * x == W and 2 * y == H:
        ans = 1
    print(area, ans)


if __name__ == '__main__':
    main()

Solution (Python):
w, h, x, y = map(int, input().split())

area1 = (w - x) * h
area2 = w * (h - y)

ans = w * h /2
tf = 0
if x * 2 == w and y * 2 == h:
    tf += 1

print(ans, tf)

Solution (Python):
w, h, x, y = map(int, input().split())

s = w * h / 2

if x/w == y/h == 0.5:
    print(str(s) + " 1")
else:
    print(str(s) + " 0")

Solution (Python):
W,H,x,y = map(int,input().split())
me = W*H/2
me
if x == W/2 and y == H/2 :
    print('%lf' %me,1)
else:
    print('%lf' %me,0)

Solution (Python):
import sys
input = sys.stdin.readline

def main():
	W, H, x, y = map(int, (input().strip().split()))
	if W/2 == x and H/2 == y:
		i = 1
	else:
		i = 0
	print("{:.9f} {}".format(W*H/2, i))


if __name__ == '__main__':
	main()

Solution (Python):
a, b, c, d = map(int, input().split())
if a == c * 2 and b == d * 2:
    print(str(a * b / 2) + " " + str(1))
else:
    print(str(a * b / 2) + " " + str(0))

Solution (Python):
a, b, c, d = map(int, input().split())
if a // 2 == c // 1 and b / 2 == d // 1:
    print(str(a * b / 2) + " " + str(1))
else:
    print(str(a * b / 2) + " " + str(0))

Solution (Python):
W, H, x, y = list(map(int, input().split()))



ans = W * H / 2
if W / 2 == x and H / 2 == y:
    many = 1
else:
     many = 0

print(ans, many)

Solution (Python):
w,h,x,y=map(int,input().split())

if w/2 == x and h/2 == y:
    print(w*h/2,"1")
else:
    print(w*h/2,"0")

Solution (Python):





def main():
  h,w,x,y =map(int,input().split())
  if h/2 == x and w/2 == y:
    print(h*w/2,1)
  else:
    print(h*w/2,0)
main()

Solution (Python):
w, h, x, y = map(int, input().split())
print(w * h / 2, 1 if w / 2 == x and h / 2 == y else 0)

Solution (Python):



W, H, x, y = map(float, input().split())

ans1 = W * H / 2
ans2 = 0
if W / 2 == x and H / 2 == y:
    ans2 = 1
print(ans1, ans2)

Solution (Python):
W, H, x, y = list(map(int,input().split()))

ans1 = W * H / 2
ans2 = 0
if W / 2 == x and H / 2 == y:
    ans2 = 1
print(ans1, ans2)

Solution (Python):
W, H, x, y = list(map(int,input().split()))

s = W * H
ans1 = s / 2
ans2 = 0
if W / 2 == x and H / 2 == y:
    ans2 = 1
print(ans1, ans2)

Solution (Python):
W, H, x, y = map(int, input().split())
max = (W*H) / 2
multi = '0'
if 2*x == W and 2*y == H:
	multi = '1'
print(str(max) + ' ' + multi)

Solution (Python):
import numpy as np
W,H,x,y = map(float, input().split())
print("{0} {1}".format(W*H/2, 1 if (x+x==W)and(y+y==H) else 0) )

Solution (Python):
W, H, x, y = map(int,input().split())

if (x == W / 2) & (y == H / 2):
    c = 1
else:
    c = 0

print(W * H / 2, c)

Solution (Python):
w, h, x, y = map(int, input().split())
if x == w/2 and y == h/2:
    c = 1
else:
    c = 0
print(w*h/2, c)

Solution (Python):
W, H, x, y = map(int, input().split())

cnt = 0
if x * 2 == W and y * 2 == H:
    cnt = 1
print(W*H/2, cnt)

Solution (Python):
w, h, x, y=map(int, input().split())

if w/2 == x and h/2 ==y:
    print(w*h/2, '1')
else:
    print(w*h/2, '0')

Solution (Python):
w,h,x,y=map(int,input().split())

if x == w/2 and y == h/2:
    print(w*h/2,"1")
else:
  print(w*h/2,"0")

Solution (Python):
n = list(map(int,input().split()))
w = n[0]
h = n[1]
x = n[2]
y = n[3]
if x == w/2 and y == h/2:
    print(w*h/2,"1")
else:
    print(w*h/2,"0")

Solution (Python):
from fractions import Fraction
import fractions
def lcm(x, y):
    return (x * y) // fractions.gcd(x, y)

def judge(a,c,d):
  x = a//c
  y = a//d
  z = a//lcm(d,c)
  return a-x-y+z


w,h,x,y = map(int,input().split())
print(w*h/2, end="")
if w/2 == x and h/2 == y:
  print(" 1")
else:
  print(" 0")

Solution (Python):
W,H,x,y=map(int,input().split());print(W*H/2,+(W*H==x*y*4))

Solution (Python):
W,H,x,y=map(int,input().split())
print(W*H/2,int(W*H==x*y*4))

Solution (Python):
W,H,x,y=map(int,input().split())
print(W*H/2,int(W*H == x*y*4))

Solution (Python):
W,H,x,y=map(int,input().split())
print(W*H/2,int(W/2==x and H/2==y))

Solution (Python):
W,H,x,y=map(int, input().split())
print(W*H/2, int(W/2==x and H/2==y))

Solution (Python):
W, H, x, y = map(int, input().split())
print(W * H / 2, 1 if W / 2 == x and H / 2 == y else 0)