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):
data = list(map(int,input().split()))
w = data[0]
h = data[1]
x = data[2]
y = data[3]
if x == w/2 and y == h/2:
        print(str(w*h/2)+" "+"1")
else:
        print(str(w*h/2)+" "+"0")

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

area = (W * H) / 2

if (x * 2) == W and (y * 2) == H:
    another_ans = 1
else:
    another_ans = 0

print(area, another_ans)

Solution (Python):
from decimal import *
W,H,x,y=map(Decimal,input().split())
ans=0
if x==W/2 and y==H/2:
    ans=1
print(W*H/2,ans)

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

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

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

Solution (Python):


import sys

def main():
    W, H, x, y = list(map(int, sys.stdin.readline().split()))
    print(W*H/2)
    if W/2 == x and H/2 == y:
        print(1)
    else:
        print(0)

if __name__ == "__main__":
    main()

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

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

Solution (Python):



s = list(map(int, input().split()))

W = s[0]
H = s[1]
x = s[2]
y = s[3]


small_area = W * H /2.
if x == W/2. and y == H/2.:
    MultipleSeparation = 1
else:
    MultipleSeparation = 0

print(small_area, MultipleSeparation)

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

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

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


area = (W * H)/2


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

print(area, pattern)

Solution (Python):
a = input().split()
w = int(a[0])
h = int(a[1])
x = int(a[2])
y = int(a[3])
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 = map(int, input().split())
if x == W // 2 and y == H / 2:
    res = 1
else:
    res = 0
print(H*W/2, res)

Solution (Python):
import math,string,itertools,fractions,heapq,collections,re,array,bisect,sys,random,time,copy,functools
from collections import deque

sys.setrecursionlimit(10**7)
inf = 10**20
mod = 10**9 + 7

DR = [1, -1, 0, 0]
DC = [0, 0, 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 S(): return input()
     
def main():
    W, H, x, y = LI()
    c_w, c_h = W/2, H/2
    way = 0 
    if x == c_w and y == c_h:
        way = 1
    print("{} {}".format(W*H/2, way))
main()

Solution (Python):
import numpy as np
from collections import defaultdict
from functools import reduce




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

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

print(W*H/2, res)

Solution (Python):

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

print(W*H/2, int(x==W/2 and y==H/2))

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

print(str(float(s))+" "+str(ans))

Solution (Python):
from decimal import Decimal, getcontext
W, H, x, y = map(int, input().split())
getcontext().prec = 10

gpoint = [W/2, H/2]
res = [0,0]

if gpoint[0] == x and gpoint[1] == y:
    res[1] = 1
else:
    res[1] = 0

res[0] = Decimal(W) * Decimal(H) / Decimal(2)
res[0] = float(res[0])


for i in res:
    print(i, end=" ")

Solution (Python):
W, H, x, y = map(int,input().split())
area = W*H/2
flg = 0
if W % 2 == 0 and H % 2 == 0:
    if x == W // 2 and y == H // 2:
        flg = 1
print(str(area) + " " + str(flg))

Solution (Python):



import array
from bisect import *
from collections import *
import fractions
import heapq
from itertools import *
import math
import random
import re
import string
import sys

W, H, x, y = map(int, input().split())
ans = W * H / 2.0


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

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

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

ans = w * h / 2

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

print(ans, multi)

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

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

print(W * H / 2, opt)

Solution (Python):
a=input().split()
W,H,x,y=int(a[0]),int(a[1]),int(a[2]),int(a[3])
s=W*H/2
if W==2*x and H==2*y:
    r=1
else:
    r=0
print("{} {}".format(s,r))

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

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

Solution (Python):
from decimal import Decimal
[W,H,x,y] = list(map(int,input().split()))
sq = W*H / 2
x_tmp = W/2
y_tmp = H/2
id = 0
if abs(x - x_tmp) < 10**(-8) and abs(y - y_tmp) < 10**(-8):
    id = 1
print(Decimal(sq),id)

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

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(x) for x in input().split()]

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

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

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

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

b = y - x * ((y-cy) / (x-cx))
if (b >= 0) and (b <= h):
    bb = ((y-cy) / (x-cx)) * w + b
    s = (b + bb) * w / 2
elif b < 0:
    a = (0 - b) * (x-cx) / (y-cy)
    aa = (h - b) * (x-cx) / (y-cy)
    s = ((-b + h) * aa / 2) - ((-b) * a / 2)
elif b > h:
    a = (0 - b) * (x - cx) / (y - cy)
    aa = (h - b) * (x - cx) / (y - cy)
    s = (b * a / 2) - ((b-h) * aa / 2)

print(s, end=' ')
print(t)

Solution (Python):

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

w = float(W)
h = float(H)

print ( w * h / 2.0 )

if x * 2 == W  and y * 2 == H:
    print (1)

else:
    print (0)

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

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

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())
area = W*H/2
if (x == W/2) and (y == H/2):
	print(area, 1)
else:
	print(area, 0)

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

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

Solution (Python):


line = list(map(int, input().split(" ")))

W = line[0]
H = line[1]
x = line[2]
y = line[3]

S = W*H/2

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

print(S,flag)

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

Solution (Python):
import sys
input = sys.stdin.readline
w, h, x, y = map(int, input().split())
if w == x*2 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())

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

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

Solution (Python):
inputs = [int(s) for s in input().split()]
w = inputs[0]
h = inputs[1]
x = inputs[2]
y = inputs[3]

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

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

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

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

print('{0} {1}'.format(ans,multi))

Solution (Python):
import sys
from math import *
stdin = sys.stdin

ni = lambda: int(ns())
na = lambda: list(map(int, stdin.readline().split()))
ns = lambda: stdin.readline().rstrip()  

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

Solution (Python):
def makelist(n, m):
    return [[0 for _ in range(m)] for _ in range(n)]






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

ans2 = "0"
cnt = 0
if H % 2 == 0 and y == H // 2:
    cnt += 1
if W % 2 == 0 and x == W // 2:
    cnt += 1





if cnt >= 2:
    ans2 = "1"
print(ans1, ans2)

Solution (Python):
w,h,x,y = map(float,input().split())
s = float(w*h/2)
d = 0
if h*x/w == y and x != 0 and x != w:
    d = 1
elif -(h*x/w) + h == y and x != 0 and x != w:
    d = 1
print("{0} {1}".format(s,d))

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

Solution (Python):


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



mino = "{0:.6f}".format(w*h/2)
if w==x*2 and h==y*2:
  out = 1
else:
  out = 0

print(str(mino) + " " + str(out))

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())
print(w * h / 2, int(x == w / 2 and y == h / 2))

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

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

Solution (Python):
a = list(map(int, input().split()))
s = float(a[0]*a[1]/2)
if a[2]*2==a[0] and a[3]*2==a[1]:
    f=1
else:
    f=0
print(s, f)

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

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

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

Solution (Python):
def solve():
    W, H, x, y = [int(_) for _ in raw_input().split()]
    ans = W * H / 2.0
    if (W % 2 == 0 and x == W/2) and (H % 2 == 0 and y == H/2):
        mul = 1
    else:
        mul = 0
    print ans, mul

if __name__ == '__main__':
    solve()

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

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

ans = (W*H)/2
if W/2 == x and H/2 == y:
    print('{} {}'.format(ans,1))
else:
    print('{} {}'.format(ans,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 = list(map(int, input().split()))

ans = W * H * 0.5
flg = 1 if x == W * 0.5 and y == H * 0.5 else 0

print(ans, flg)

Solution (Python):

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


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

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

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

s = w*h/2
num = 0
if float(x) == w/2 and float(y) == h/2:
	num = 1
str = str(s) + " " + str(num)
print(str)

Solution (Python):
import sys
from operator import itemgetter
from collections import deque

input = sys.stdin.readline

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

if W*y == H*x and (y - H)*W == - H*x:
    multiple = 1
else:
    multiple = 0

print((H*W)/2, multiple)

Solution (Python):
H,W,x,y=map(float,input().split())
ans=H*W/2
flag=0
if x==H/2 and y==W/2:
    flag=1
print(str(ans)+" "+str(flag))

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

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

Solution (Python):
import sys

def main():
    input = sys.stdin.readline
    W, H, x, y = map(int, input().split())
    area = W * H / 2
    way = int(2*x == W and 2*y == H)
    print('{} {}'.format(area, way))

if __name__ == '__main__':
    main()

Solution (Python):
def C(W, H, x, y):
    return W*H/2, int(W/2 == x and H/2 == y)


if __name__ == '__main__':
    w, h, x, y = map(int, input().split())
    print(*C(w, h, x, y))

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

area = W * H / 2.0

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

Solution (Python):
inputa = list(map(int, input().split()))
 
S = inputa[0] * inputa[1] / 2
 
if inputa[0] / 2 == inputa[2]:
  if inputa[1] / 2 == inputa[3]:
    print (S, " 1")
    exit(0)
print (S, " 0")

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

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

Solution (Python):
w, h, x, y = map(int, input().split(' '))
result1 = w * h /2
if x == w/2 and y == h/2:
    print(result1, 1)
else:
    print(result1, 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())
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())
S=W*H/2
ans=0
if 2*x==W and 2*y==H:
    ans=1
print(S, ans)

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

menseki = float(W * H * 0.5)

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







print(menseki,flag)

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


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

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

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(h*w/2,'0')

Solution (Python):
W, H, x, y = (float(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())

square = w * h / 2

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

print(square, result)

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

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

Solution (Python):
import sys,collections,math,random;sys.setrecursionlimit(10**7)
def Is(): return [int(x) for x in sys.stdin.readline().split()]
def Ss(): return sys.stdin.readline().split()
def I(): return int(sys.stdin.readline())
def S(): return input()

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

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 resolve():
    (W, H, x, y) = list(map(int, input().split(" ")))
    if x == (W/2) and y == (H/2):
        print("{:.6f} {}".format(float(W*H/2), 1))
        return
    else:
        print("{:.6f} {}".format(float(W*H/2), 0))
        return


if '__main__' == __name__:
    resolve()

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

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

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


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

else:
    print('{} {}'.format(w * h / 2, 0))

Solution (Python):

w, h, x, y = map(int, input().split())
print(w * h / 2, 0 + (x == w / 2 and y == h / 2))

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

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

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

Solution (Python):



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

if abs(W / 2 - float(x)) < 1e-9 and abs(H / 2 - float(y)) < 1e-9:
    print((W * H) / 2, 1)
else:
    print((W * H) / 2, 0)

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

half_area = w * h / 2
center = (w/2, h/2)

if (x, y) == center:
    print(half_area, 1)
else:
    print(half_area, 0)

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

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

W = int(W)
H = int(H)
x = int(x)
y = int(y)

S = W * H / 2

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

print(S, f)

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

sys.setrecursionlimit(10 ** 7)

def li(): return map(int, stdin.readline().split())
def li_(): return map(lambda x: int(x) - 1, stdin.readline().split())
def lf(): return map(float, stdin.readline().split())
def ls(): return stdin.readline().split()
def ns(): return stdin.readline().rstrip()
def lc(): return list(ns())
def ni(): return int(stdin.readline())
def nf(): return float(stdin.readline())

w, h, x, y = li()

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 = [int(i) for i in input().split()]

answer = W * H / 2 

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

print(' '.join([str(answer), str(count)]))

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

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

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

max = W*H/2.0

a = W/2
b = H/2

gap = 0.000000001
flag = 0

if(abs(x-a) < gap and abs(y-b) < gap):
    flag = 1

print('{:.6f} {}'.format(max, flag))

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

half=w*h/2

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

print(str(half)+" "+str(multi))

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 = (int(i) for i in input().split())
print(W*H/2)
if x == W/2 and y == H/2:
    print(1)
else:
    print(0)

Solution (Python):
from sys import exit

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

square = W * H / 2

ans = 0

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

print(square, ans)

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

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

Solution (Python):
W, H, x, y = map(float, raw_input().split(' '))

multi = False
if x == W/2 and y == H/2:
    multi = True

M = W * H / 2

print M, 1 if multi else 0

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

ans = (W * H) / 2
div = 1 if (x == W / 2 and y == H / 2) else 0

print("{0:.6f} {1}".format(ans, div))

Solution (Python):
import sys
sys.setrecursionlimit(100000)

def intinput(): return map(int,sys.stdin.readline().split())

w,h,x,y=intinput()
print(str((w*h/2))+" "+str(int(w%2==0 and h%2==0 and w//2==x and h//2==y)))

Solution (Python):

import time
import re
import math

def main():
    w,h,x,y=map(int,input().split())
    f=0
    if w/2==x and h/2==y:
        f=1
    print("{} {}".format(w*h/2,f))
start=time.time()
main()

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())

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

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

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

Solution (Python):
import sys

sys.setrecursionlimit(4100000)


def inputs(num_of_input):
    ins = [input() for i in range(num_of_input)]
    return ins


def solve(inputs):
    [W, H, x, y] = string_to_int(inputs[0])
    max = (W * H) / 2
    is_multi = 0
    if x == W / 2 and y == H / 2:
        is_multi = 1

    return "%.6f %d" % (max, is_multi)


def string_to_int(string):
    return list(map(lambda x: int(x), string.split()))


if __name__ == "__main__":
    ret = solve(inputs(1))
    print(ret)

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

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

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

print(str(W*H/2) + " " + str(ans))

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

if (x == 0) or (x == W) or (y == 0) or (y == H) or (H / W * x).is_integer():
    if (x == W / 2) and (y == H / 2):
        print(W * H / 2, 1)
    else:
        print(W * H / 2, 0)
else:
    ans1 = min(x * H, (W - x) * H)
    ans2 = min(W * y, W * (H - y))
    if ans1 == ans2:
        print(ans1, 1)
    else:
        print(max(ans1, ans2), 0)

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

max= W * H / 2
check = 0
if W/2 == x:
    if H/2 == y:
        check = 1

print(max,check)

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

if(x == W/2 and y == H/2):
    hantei = 1

print(W*H/2,hantei)

Solution (Python):
W,H,x,y = 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=[int(i) for i in input().split()]
if W/2==x and H/2==y : a=1
else:a=0
print(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())

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

Solution (Python):
from sys import stdin

w, h, x, y = [int(x) for x in stdin.readline().rstrip().split()]

ans_m = (w*h)/2
ans_p = 0

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

print(ans_m, ans_p)

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

S = W * H * 0.5

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

Solution (Python):

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


max_s = W * H /2

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


print(str(max_s) + " " + str(ans))

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


a = W * H / 2
if x == W / 2 and y == H / 2:
    b = 1
else:
    b = 0

ans = str(a) + ' ' + str(b)
print(ans)

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

c_x = w/2
c_y = h/2

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

Solution (Python):
from fractions import Fraction
W, H, x, y = map(int, input().split())
if Fraction(W, 2) == x and Fraction(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
op = 0
if w/2 == x and h/2 == y:
    op = 1
print(ans,op)

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())


a = W / 2
b = H / 2
area = W * H / 2
cnt = 0
if a == X and b == Y:
    cnt = 1

print(area,cnt)

Solution (Python):
W, H, X, Y = map(int, input().split())

Area = W * H /2

if X == W /2 and Y == H / 2:
  cases = 1
else:
  cases = 0

print(Area, cases)

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

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

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

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

Solution (Python):










import numpy as np
import math
import copy

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

area = float((w * h) / 2)
print(area)

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

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

Solution (Python):
W,H,x,y=(int(x) for x in input().split())
g_x=W/2
g_y=H/2

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

Solution (Python):
def c_rectangle_cutting(W, H, X, Y):
    if (W % 2 == 0 and H % 2 == 0) and (X == W // 2 and Y == H // 2):
        return '{} {}'.format(H * W / 2, 1)
    return '{} {}'.format(H * W / 2, 0)

W, H, X, Y = [int(i) for i in input().split()]
print(c_rectangle_cutting(W, H, X, Y))

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

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

Solution (Python):
from sys import stdin

if __name__ == '__main__':
    W, H, x, y = [int(x) for x in stdin.readline().rstrip().split()]

    max = (W * H) / 2

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

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

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

count = 0
tate_flag = False
yoko_flag = False


if (w/2 == x):
    tate_flag = True
    

if (h/2 == y):
    yoko_flag = True
    

if tate_flag == True and yoko_flag == True:
    count = 1

print(w * h / 2, count)

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

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

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

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

print(' '.join(map(str, [w*h/2, multi])))

Solution (Python):
def main():
    w, h, x, y = map(int, input().split())
    print('%.6f %d' % solve(w, h, x, y))

def solve(w, h, x, y):
    r = w * h / 2
    if x == w / 2 and y == h / 2:
        return (r, 1)
    else:
        return (r, 0)

main()

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

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

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

area = W*H/2

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

print("%.9f" % area, ways)

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):
def IL(): return list(map(int,input().split()))
def SL(): return input().split()
def I(): return int(input())
def S(): return list(input())
w,h,x,y=IL()
if w%2==0 and h%2==0 and 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().strip().split())

a = W * H / 2
b = 0
if W % 2 == 0 and H % 2 == 0 and W // 2 == x and H // 2 == y: b = 1

print('{} {}'.format(a, b))

Solution (Python):
W,H,x,y = map(int, raw_input().split())
S = 0.0 + W*H
S = S/2
t = 0
if(W/2 == x and W%2 == 0 and H%2 == 0 and H/2 ==y):
	t = 1
ans = "{0:.2f}".format(S)+" "+str(t)
print(ans)

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

c = [w/2, h/2]  

if x == c[0] and y == c[1]:
  area = w * h / 2
  mul = 1
else:
  area = w * h / 2
  mul = 0

print(area, mul)

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

x_s = W /2
y_s = H /2
area = W * y_s
if x_s == x and y_s == y:
    print("{0:.6f}".format(area),1)
else:
    print("{0:.6f}".format(area),0)

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

Solution (Python):

from collections import defaultdict
from collections import deque
from heapq import heappush, heappop
import sys
import math
import bisect
import random
def LI(): return list(map(int, sys.stdin.readline().split()))
def I(): return int(sys.stdin.readline())
def LS():return list(map(list, sys.stdin.readline().split()))
def S(): return list(sys.stdin.readline())[:-1]
def IR(n):
    l = [None for i in range(n)]
    for i in range(n):l[i] = I()
    return l
def LIR(n):
    l = [None for i in range(n)]
    for i in range(n):l[i] = LI()
    return l
def SR(n):
    l = [None for i in range(n)]
    for i in range(n):l[i] = S()
    return l
def LSR(n):
    l = [None for i in range(n)]
    for i in range(n):l[i] = LS()
    return l
sys.setrecursionlimit(1000000)
mod = 1000000007

W, H, x, y = LI()

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