There is a right triangle ABC with ∠ABC=90°.
Given the lengths of the three sides, |AB|,|BC| and |CA|, find the area of the right triangle ABC.
It is guaranteed that the area of the triangle ABC is an integer.

-----Constraints-----
 - 1 \leq |AB|,|BC|,|CA| \leq 100
 - All values in input are integers.
 - The area of the triangle ABC is an integer.

-----Input-----
Input is given from Standard Input in the following format:
|AB| |BC| |CA|

-----Output-----
Print the area of the triangle ABC.

-----Sample Input-----
3 4 5

-----Sample Output-----
6


This triangle has an area of 6.

Difficulty: EASY

Solutions:
(P, Q, R) = map(int, input().split())
print(P * Q // 2)


(h, w, _) = map(int, input().split())
print(h * w // 2)


(C, A, B) = map(int, input().split())
print(C * A // 2)


(a, b, c) = map(int, input().split())
s = a * b // 2
print(s)


l = [int(i) for i in input().split()]
print(l[0] * l[1] // 2)


(a, b, c) = map(int, input().split())
ans = a * b // 2
print(ans)


(c, a, b) = map(int, input().split())
S = a * c // 2
print(S)


(AB, BC, _) = map(int, input().split())
print(AB * BC // 2)


(AB, BC, AC) = map(int, input().split())
area = AB * BC // 2
print(area)


(ab, bc, ca) = map(int, input().split())
print(ab * bc // 2)


(a, b, dummy) = map(int, input().split())
print(a * b // 2)


(a, b, c) = list(map(int, input().split()))
print(a * b // 2)


(A, B, C) = (int(x) for x in input().split())
print(A * B // 2)


A = list(map(int, input().split()))
print(A[0] * A[1] // 2)


(x, y, z) = list(map(int, input().split()))
print(x * y // 2)


(ab, bc, ca) = (int(n) for n in input().split())
print(ab * bc // 2)


(AB, BC, CB) = map(int, input().split())
print(AB * BC // 2)


A = [int(i) for i in input().split()]
print(A[1] * A[0] // 2)


(a, b, c) = (int(i) for i in input().split())
print(a * b // 2)


a = input().split()
print(int(a[0]) * int(a[1]) // 2)


num = input().split()
print(int(num[0]) * int(num[1]) // 2)


(a, b, c) = [int(_) for _ in input().split()]
print(a * b // 2)


(c, a, b) = map(int, input().split())
r = a * c // 2
print(r)


S = list(map(int, input().split()))
print(S[0] * S[1] // 2)


def mapt(fn, *args):
	return tuple(map(fn, *args))

def Input():
	return mapt(int, input().split(' '))

def main():
	(a, b, c) = Input()
	print(b * a // 2)
main()


def main():
	t = list(map(int, input().split()))
	print(t[0] * t[1] // 2)

def __starting_point():
	main()
__starting_point()


(A, B, C) = [int(a) for a in input().split(' ')]
print(A * B // 2)


e = [int(x) for x in input().split()]
print(e[0] * e[1] // 2)


(a, b, _) = [int(i) for i in input().split()]
print(a * b // 2)


(a, b, c) = map(int, input().strip().split(' '))
print(a * b // 2)


(A, B, C) = [int(i) for i in input().split()]
print(A * B // 2)


(a, b, c) = map(int, input().split(' '))
x = a * b // 2
print(x)


(ab, bc, ac) = map(int, input().split(' '))
print(ab * bc // 2)


def lcm(a, b):
	return a * b // math.gcd(a, b)
MOD = 10 ** 9 + 7
(a, b, c) = list(map(int, input().split()))
print(a * b // 2)


(ab, bc, ca) = list(map(int, input().split()))
area = ab * bc // 2
print(area)


(a, b, c) = input().split()
print(int(a) * int(b) // 2)


c = list(map(int, input().split()))
print(c[0] * c[1] // 2)


x = list(map(int, input().split()))
print(x[0] * x[1] // 2)


(c, a, b) = map(int, input().split())
area = c * a // 2
print(area)


print(eval('*'.join(input().split()[:2])) // 2)


(L_ab, L_bc, L_ca) = map(int, input().split())
print(L_ab * L_bc // 2)


from math import gcd
from itertools import combinations, permutations, accumulate, product
from collections import deque, defaultdict, Counter
import decimal
import re
import math
import bisect
import heapq
import sys
sys.setrecursionlimit(10000000)
mod = 10 ** 9 + 7
INF = float('inf')
from sys import stdin
readline = stdin.readline

def readInts():
	return list(map(int, readline().split()))

def readTuples():
	return tuple(map(int, readline().split()))

def I():
	return int(readline())
(a, b, c) = readInts()
print(a * b // 2)


a = input().split()
b = int(a[0])
c = int(a[1])
print(b * c // 2)


l = list(map(int, input().split()))
print(l[0] * l[1] // 2)


(p, q, r) = map(int, input().split())
print(p * q // 2)


(x, y, _) = map(int, input().split())
print(x * y // 2)


def main():
	(a, b, c) = list(map(int, input().split()))
	print(a * b // 2)

def __starting_point():
	main()
__starting_point()


(A, B, C) = (int(X) for X in input().split())
print(A * B // 2)


(c, a, _) = map(int, input().split())
print(c * a // 2)


(a, b, _) = input().split()
print(int(a) * int(b) // 2)