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())
square = (w * h) / 2
flg = 0
if x == w / 2 and y == h / 2:
    flg = 1
print(square, flg)

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

S = float(W*H/2)

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

Solution (Python):
def count_section_by_zero(data):
  count = 0
  flg = False
  start = 0
  for i, d in enumerate(data):
    if flg is False and d != 0:
      count += 1
      flg = True
      
    if d == 0:
      flg = False
  return count

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

def input_list_str():
  return list(map(str, input().split()))

def lcm_base(x, y):
    return (x * y) // fractions.gcd(x, y)

def lcm_list(numbers):
    return reduce(lcm_base, numbers, 1)

def gcd(*numbers):
    return reduce(fractions.gcd, numbers)

def gcd_list(numbers):
    return reduce(fractions.gcd, numbers)

def combinations_count(n, r):
    return math.factorial(n) // (math.factorial(n - r) * math.factorial(r))


def divide_two(arg):
  c = 0
  while True:
    if c >= 2:
      break
    if arg % 2 != 0:
      break
    arg //= 2
    c += 1
  return c


def prime_factorize(n):
    a = []
    while n % 2 == 0:
        a.append(2)
        n //= 2
    f = 3
    while f * f <= n:
        if n % f == 0:
            a.append(f)
            n //= f
        else:
            f += 2
    if n != 1:
        a.append(n)
    return a

def main():
  w, h, x, y = input_list()
  way = 0
  if w == 2*x and h == 2*y:
    way = 1
  print((w*h)/2, way)
  
import math
import fractions
import collections
import itertools
from functools import reduce
main()

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

area = W*H*0.5

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

print(area, frac)

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

c_x = w / 2
c_y = h / 2

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

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

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

def ans(a, b, c, d):
    if (c == a / 2) and (d == b / 2):
        return 1
    else:
        return 0
        
print(W * H / 2,ans(W, H, x, y))

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

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

Solution (Python):

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

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

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

Solution (Python):
import math
import collections
from operator import mul
from functools import reduce

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

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

if flag==-1:
    flag=0
print("{0:.6f}".format(float(W*H/2)),flag)

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

ans = w * h / 2

multiple = 0

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

print("{} {}".format(ans,multiple))

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

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

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

if 2 * x == W and 2 * y == H:
    mul = 1
else:
    mul = 0

print(W * H / 2, mul)

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, end=' ')
print(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 , 1) if 2*x==w and 2*y==h else print((w*h)/2,0)

Solution (Python):
import sys
import os

ii = lambda: int(sys.stdin.buffer.readline().rstrip())
il = lambda: list(map(int, sys.stdin.buffer.readline().split()))


def main():
    if os.getenv("LOCAL"):
        sys.stdin = open("input.txt", "r")

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


if __name__ == '__main__':
    main()

Solution (Python):
W, H, x, y = map(float, input().split())
f = 0
if W / 2 == x and H / 2 == y:
    f = 1

print("{} {}".format(W*H/2, f))

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

flg = False
if w%2 == 0 and w//2 == x and h%2 == 0 and h//2 == y:
    flg = True

print(w * h / 2, 1 if flg else 0)

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

s = (W*H)/2
c = 0

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

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

c = 0

s = w*h/2

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

print(s,c)

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

surface = W * H
ans = [0,0]
if 2*x==W and 2*y==H:
    ans = [surface/2,1]
else:
    ans = [surface/2,0]

print(*ans)

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

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

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

Solution (Python):

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

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

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

Solution (Python):
import sys
from bisect import *
from heapq import *
from collections import *
from itertools import *
from functools import *
from math import *

sys.setrecursionlimit(100000000)
input = lambda: sys.stdin.readline().rstrip()

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

Solution (Python):
import sys
import os


def main():
    if os.getenv("LOCAL"):
        sys.stdin = open("input.txt", "r")

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


if __name__ == '__main__':
    main()

Solution (Python):
import sys
import os


def main():
    if os.getenv("LOCAL"):
        sys.stdin = open("input.txt", "r")

    W, H, x, y = list(map(float, sys.stdin.buffer.readline().split()))
    ret = (W * H) / 2
    p = x == W/2 and y == H/2
    print(ret, 1 if p else 0)


if __name__ == '__main__':
    main()

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):
def solve():
    A = list(map(int, input().split()))
    a,b,c,d = A
    s = a * b / 2
    b = 1 if a == c*2 and b == d*2 else 0
    ans = [s, b]
    print(*ans)
solve()

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

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 = [int(x) for x in input().split()]
print(w*h/2, int(2 * x == w and 2 * y == h))

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 = [int(i) for i in input().split()]
if w%2==0 and w//2==x and h%2==0 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())
ans=w*h/2
if w==x*2 and h==y*2:
    print(ans,1)
else:
    print(ans,0)

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

Solution (Python):
import sys

sr = lambda: sys.stdin.readline().rstrip()
ir = lambda: int(sr())
lr = lambda: list(map(int, sr().split()))

W, H, X, Y = lr()
bl = (1 if W == X+X and H == Y+Y else 0)
print(W*H/2, bl)

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

Solution (Python):
W, H, x, y = (int(x) for x 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())
ans=0
if x*2==W and y*2==H:
    print(W*H/2,1)
    exit()
print(W*H/2,0)

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

Solution (Python):
w, h, x, y = map(int, input().split())
hs = 0.5 * w * h
if x == w / 2 and y == h / 2:
    print("{:.10f}".format(hs), 1)
else:
    print("{:.10f}".format(hs), 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 2*x == W and 2*y == H:
    B=1
else: 
    B=0
print(W*H/2, B)

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):
A, B, C, D = map(int, input().split())
S = A*B/2

ans = 0
if C == A/2 and D == B/2:
  ans = 1
print(S,ans)

Solution (Python):

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

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

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

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

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

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

Max = W*H/2

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

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

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

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(w*h/2,1)
else:
    print(w*h/2,0)

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

center_x = W / 2
center_y = H / 2
area = W * H / 2

if x == center_x and y == center_y:
    print(area, 1)
else:
    print(area, 0)

Solution (Python):


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


if __name__ == "__main__":
    submit()

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

ans1 = w*h/2
ans2 = 0
if((x*2==w)&(y*2==h)):
    ans2 = 1

print('{} {}'.format(ans1,ans2))

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

Solution (Python):
def getint():
    a = input().split()
    for i in range(len(a)):
        a[i] = int(a[i])
    return a

wide,high,x,y = getint()
a,b = 0,0
if wide == 2*x and high == 2*y:
    b = 1
a = wide*high/2
print(a,b)

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

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

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

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

Solution (Python):

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

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

Solution (Python):
w,h,x,y=map(int,input().split())
ans=w*h/2.000000000
a=0

if(x==w/2 and y==h/2):a=1
print('{:.7f}'.format(ans),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):

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

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


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

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

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

f = 0

if x * 2 == w and y * 2 == h:
    f += 1

print((w * h) / 2, f)

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

S = (W*H) / 2

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

Solution (Python):


import sys

DEBUG = False

def solve():
    return


def read_int_list(sep = " "):
    return [int(s) for s in sys.stdin.readline().rstrip().split(sep)]

def read_int():
    return int(sys.stdin.readline())

def dprint(*args, **kwargs):
    if DEBUG:
        print(*args, **kwargs)
    return


def main():
    w, h, x, y = read_int_list()
    nr_ans = 1
    center_point = (h / 2, w / 2)
    if abs(center_point[0] - y) < 1e-9 and abs(center_point[1] - x) < 1e-9:
        nr_ans = 2
    print("%f %d" % (w * h / 2, nr_ans - 1))


if __name__ == "__main__":
    main()

Solution (Python):




def main():
    W, H, x, y = map(int, input().split())
    
    try:
        a = (y - H / 2) / (x - W / 2)
        b = y - a * x
        X = -b / a
    except ZeroDivisionError:
        a, b = 0, 0
        X = x

    cnt = (1 if W / 2 == x and H / 2 == y else 0)
    area = (X + W - X) * H / 2

    print(area, cnt)


if __name__ == "__main__":
    main()

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

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

print(ans1, ans2)

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

area = W*H/2
fl = 2*x==W and 2*y==H
print(area,int(fl)) if fl else print(area,int(fl))

Solution (Python):

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

print("{0} {1}".format(H * W / 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)
else:
    print((W*H)/2, 0)

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

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

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

print(half, p)

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

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

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

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

Solution (Python):

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

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


gx = W / 2.0
gy = H / 2.0


split = 0

if x == gx and y == gy:
    split = 1

print(W*H/2.0,split)

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

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



ans=w*h/2

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

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

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

ans1 = W*H/2

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

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

t = w * h / 2

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

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

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

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

t = w * h / 2

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

Solution (Python):
import math
def main():
    t = [int(t)for t in input().split()]
    w,h,x,y = t[0],t[1],t[2],t[3]

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

if __name__ == "__main__":
    main()

Solution (Python):
X, H, x, y = map(int, input().split())
S = X * H
max_small = S / 2

print(max_small, end=' ')

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

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

s = w*h/2

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

print(str(s)+" "+str(d))

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

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

Solution (Python):
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)

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

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

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

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

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

if x*2==w and y*2==h:
    a=1
else:
    a=0

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

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

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

judge=0

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

print(W*H/2,judge)

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

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

    print(W * H / 2, 0)


main()

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

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):
import collections


class Solution:
    def solve(self, W: int, H: int, x: int, y: int) -> int:

        area = 0.5 * W * H

        if x * 2 == W and y * 2 == H:
            return area, 1
        else:
            return area, 0


if __name__ == '__main__':

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

    
    solution = Solution()
    answer = solution.solve(W, H, x, y)
    print(answer[0], answer[1])

Solution (Python):
import numpy as np

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

ans_1 = W*H/2

if (x == W/2) & (y == H/2):
    ans_2 = 1
else:
    ans_2 = 0
    
ans = str(ans_1) + " " + str(ans_2)

print(ans)

Solution (Python):



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

if __name__=='__main__':
  main()

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

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

Solution (Python):


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

menseki = w*h/2
flag = 0
if x == w/2 and y == h/2:
    flag = 1


print(str(menseki) + " " + str(flag))

Solution (Python):
import sys, re
from collections import deque, defaultdict, Counter
from math import ceil, sqrt, hypot, factorial, pi, sin, cos, radians
from itertools import accumulate, permutations, combinations, product
from operator import itemgetter, mul
from copy import deepcopy
from string import ascii_lowercase, ascii_uppercase, digits
from bisect import bisect, bisect_left
from fractions import gcd
from heapq import heappush, heappop
from functools import reduce
def input(): return sys.stdin.readline().strip()
def INT(): return int(input())
def MAP(): return map(int, input().split())
def LIST(): return list(map(int, input().split()))
sys.setrecursionlimit(10 ** 9)
INF = float('inf')
mod = 10 ** 9 + 7

W, H, x, y = MAP()

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

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 w%2 == 0 and h%2 == 0 and w//2 == x and h //2 == y:
    print(h*w/2,1)
else:
    print(h*w/2,0)

Solution (Python):
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())


area_half = W * H / 2

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

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

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

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

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

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

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

Solution (Python):
import os, sys, re, math, queue

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

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

Solution (Python):


ary = list(map(int,input().split(" ")))
area = ary[0]*ary[1]/2
f = 0
if ary[0] / 2 - ary[2] == 0 and ary[1] / 2 - ary[3] == 0:
    f = 1
print(area,f)

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

if(2*x==w and 2*y==h): flg = 1

print(w*h/2, end=' ')
print(flg)

Solution (Python):
w, h, x, y = list(map(int, input().split(' ')))
hoge = w / 2 == x
fuga = h / 2 == y
print('%.6f %s' % ((w*h) / 2, int(hoge and fuga)))

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

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

Solution (Python):
import sys
sys.setrecursionlimit(10**6)
from math import floor,ceil,sqrt,factorial,log
from heapq import heappop, heappush, heappushpop
from collections import Counter,defaultdict,deque
from itertools import accumulate,permutations,combinations,product,combinations_with_replacement
from bisect import bisect_left,bisect_right
from copy import deepcopy
from operator import itemgetter
from fractions import gcd
mod = 10 ** 9 + 7
inf = float('inf')
ninf = -float('inf')
 

def ii(): return int(sys.stdin.readline().rstrip()) 
def mii(): return map(int,sys.stdin.readline().rstrip().split())
def limii(): return list(mii()) 
def lin(n:int): return [ii() for _ in range(n)]
def llint(n: int): return [limii() for _ in range(n)]

def ss(): return sys.stdin.readline().rstrip() 
def mss(): return sys.stdin.readline().rstrip().split()
def limss(): return list(mss()) 
def lst(n:int): return [ss() for _ in range(n)]
def llstr(n: int): return [limss() for _ in range(n)]





w,h,x,y=mii()

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

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

s = w*h/2

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

print(s, flag)

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
print(a,1) if W/2==x and H/2==y else print(a,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):
def main():
  import fractions
  
  w,h,x,y=map(float,input().split())
  
  if w/2==x and h/2==y:
    print(w*h/2,1)
  else:
    print(w*h/2,0)
  
if __name__=="__main__":
  main()

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

max_area = w*h/2

if w%2!=0 or h%2!=0:
    split = 0

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

print('{} {}'.format(max_area, split))

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

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())
gx=w/2
gy=h/2
s=(w*h)/2
if gx==x and gy==y:
	print(s,1)
else:
	print(s,0)

Solution (Python):
W, H, x, y = map(int,input().split())
S = 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())

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

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

w, h, x, y = map(int, sys.stdin.readline().split())

def main():
    s = w * h / 2
    f = (x == w / 2 and y == h / 2) & 1
    return s, f

if __name__ == '__main__':
    ans = main()
    print(*ans, sep=' ')

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

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

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

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

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

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

print(ans,num)

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

Solution (Python):


[d, w, x, y] = [int(x) for x in input().split()]

m = d * w / 2

r = 1 if d / 2 == x and w / 2 == y else 0

print(m, r)

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

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

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

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

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

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

Solution (Python):
import sys
from collections import deque, Counter, defaultdict
from fractions import gcd
input = sys.stdin.readline

def eprint(s):
    if type(s) != type('str'):
        s=str(s)

    sys.stderr.write(s+'\n')
    return

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

if __name__ == '__main__':
    main()

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

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

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())
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 = list(map(int, input().split(" ")))

s = w*h/2

flag = 0

if x == w/2 and y == h/2:
    flag = 1
    
print(s, flag)

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

_w, _h, _x, _y = list(map(int, input().split()))
print(*solve(_w, _h, _x, _y))

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

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