Problem:
 Score : 100 points    Problem Statement 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 1 3 4 5      Sample Output 1 6   This triangle has an area of 6 .       Sample Input 2 5 12 13      Sample Output 2 30  This triangle has an area of 30 .       Sample Input 3 45 28 53      Sample Output 3 630  This triangle has an area of 630 .

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

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

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

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

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

Solution (Python):
A,B,C=map(int,input().split())
l=[A,B,C]
l.sort()

print(int((l[0]*l[1])/2))

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

Solution (Python):
n = list(map(int, input().split()))

n.remove(max(n))
print(int(n[0] * n[1] /2))

Solution (Python):
a,b,_ = map(int, input().split()) 
print(a*b//2)

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

Solution (Python):
c,a,b = map(int, input().split())
print(int(a*c*0.5))

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

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

Solution (Python):
AB,BC,CA = map(int,input().split())
print(int(AB*BC/2))

Solution (Python):
a,b,_ = map(int,input().split())
print(int(a*b/2))

Solution (Python):
AB,BC, CA = map(int,input().split())
print( int(AB*BC/2))

Solution (Python):
import sys
import math
import itertools

ab,bc,ca=list(map(int,input().split()))

print(int((ab*bc)/2))

Solution (Python):
import sys

INPUT = lambda: sys.stdin.readline().rstrip()
MAP = lambda: map(int, INPUT().split())

sys.setrecursionlimit(10 ** 9)


def main():
    X, Y, _ = MAP()
    print(X*Y//2)


if __name__ == '__main__':
    main()

Solution (Python):
AB,BC,CA = map(int, input().split())

print(AB*BC//2)

Solution (Python):
a,b,_ = map(int,input().split())
print(a * b //2)

Solution (Python):
def main():
    side_length = list(map(int, input().split(" ")))
    even_side = 0
    for i in range(3):
        if side_length[i] % 2 == 0:
            even_side = side_length.pop(i)
            break
    if even_side ** 2 + side_length[0] ** 2 == side_length[1] ** 2:
        print(even_side * side_length[0] // 2)
    else:
        print(even_side * side_length[1] // 2)


if __name__ == '__main__':
    main()

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

Solution (Python):
a,b,c = map(int,input().split())

S = a*b/2
print(int(S))

Solution (Python):
a,b,c = map(int,input().split())

print(int(a*b/2))

Solution (Python):
a,b,c = sorted(map(int,input().split()))

print(int(1/2*a*b))

Solution (Python):
ab, bc, ca = map(int, input().split())

print((ab * bc) // 2)

Solution (Python):
a = list(map(int, input().split()))
a.remove(max(a))
print(int(a[0] * a[1] / 2))

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

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

Solution (Python):
ab, bc, ca = map(int, input().split())

print(ab * bc // 2)

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

Solution (Python):
a,b,c = map(int, input().split())

print(int(a * b / 2))

Solution (Python):
a, b, c = map(int, input().split())

print(int(a*b/2))

Solution (Python):
AB, BC, CA = [int(i) for i in input().split()]

S = (AB * BC) // 2

print(S)

Solution (Python):
AB, BC, CA = map(int, input().split())

ans = AB * BC // 2

print(ans)

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

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

Solution (Python):
def examA():
    L = LI(); L.sort()
    ans = L[0]*L[1]//2
    print(ans)
    return

def examB():
    return

def examC():
    return

def examD():
    return

import sys,copy,bisect,itertools,heapq,math
from heapq import heappop,heappush,heapify
from collections import Counter,defaultdict,deque
def I(): return int(sys.stdin.readline())
def LI(): return list(map(int,sys.stdin.readline().split()))
def LSI(): return list(map(str,sys.stdin.readline().split()))
def LS(): return sys.stdin.readline().split()
def SI(): return sys.stdin.readline().strip()
global mod,mod2,inf,alphabet,ALPHABET, _ep
mod = 10**9 + 7
mod2 = 998244353
inf = 10**18
_ep = 1e-9
alphabet = [chr(ord('a') + i) for i in range(26)]
ALPHABET = [chr(ord('A') + i) for i in range(26)]

if __name__ == '__main__':
    examA()

Solution (Python):
"""
author : halo2halo
date : 16, Jan, 2020
"""

import sys
import numpy as np

read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines
sys.setrecursionlimit(10 ** 7)

a, b, c = map(int, readline().decode('utf8').split())
print(a * b // 2)

Solution (Python):
X, Y, Z = map(int, input().split())
print(X*Y//2)

Solution (Python):
import math
import queue
import bisect
import heapq
import time
import itertools

mod = int(1e9+7)

def swap(a,b):
    return (b,a)

def my_round(a,dig=0):
    p = 10 ** dig
    return (a * p * 2 + 1) // 2 / p

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

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

def divisors(a): 
    divisors = []
    for i in range(1,int(a**0.5)+1):
        if a%i==0:
            divisors.append(i)
            if i!=a//i:
                divisors.append(a//i)
    return divisors

def is_prime(a): 
    if a<2:
        return False
    elif a==2:
        return True
    elif a%2==0:
        return False
    sqrt_num = int(a**0.5)
    for i in range(3,sqrt_num+1,2):
        if a%i==0:
            return False
    return True

def prime_num(a): 
    pn = [2]
    for i in range(3,int(a**0.5),2):
        prime = True
        for j in pn:
            if i%j==0:
                prime = False
                break
        if prime:
            pn.append(i)
    return pn

def prime_fact(a): 
    sqrt = math.sqrt(a)
    res = []
    i = 2
    if is_prime(a):
        res.append(a)
    else:
        while a!=1:
            while a%i==0:
                res.append(i)
                a //= i
            i += 1
    return res

def main():
    ab,bc,ca = map(int,input().split())
    ans = ab * bc // 2
    print(ans)
    return

if __name__=='__main__':
    main()

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

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

Solution (Python):
ab, bc, ca = map(int, input().split())

print(ab * bc // 2)

Solution (Python):
def main():
    AB, BC, CA = list(map(int, input().split()))
 
    print(int(AB * BC / 2))
 
main()

Solution (Python):
def main():
    from sys import stdin
    r = stdin.readline()[:-1]
    

    a, b, c = map(int, r.split())
    print(a*b//2)
    
if __name__ == '__main__':
    main()

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

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

Solution (Python):
a,b,c = map(int, input().split())
print(int(a*b*0.5))

Solution (Python):
A,B,C = map(int,input().split())
r= A*B*C/max(A,B,C)/2

print(int(r))

Solution (Python):
def p_a():
    a, b, c = map(int, input().split())
    print(a * b // 2)
    
p_a()

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

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

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

Solution (Python):
import sys

c, a, b = map(int, sys.stdin.readline().split())

def main():
    return c * a // 2

if __name__ == '__main__':
    ans = main()
    print(ans)

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

Solution (Python):
a, b, c = list(map(int, input().split()))

print(a * b // 2)

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

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

Solution (Python):
def main():
    AB, BC, CA = list(map(int, input().split()))

    print(int(AB * BC / 2))

main()

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

Solution (Python):
a, b, c = map(int,input().split())

print(int(a*b/2))

Solution (Python):
import sys
sys.setrecursionlimit(10**9)
INF=10**18
MOD=10**9+7
def input():
    return sys.stdin.readline().rstrip()

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

if __name__ == '__main__':
    main()

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

Solution (Python):
AB,BC,CA = map(int, input().split())
print(int(BC * AB / 2))

Solution (Python):
a, b, c = map(lambda x: int(x), input().split())

print(int((a*b)/2))

Solution (Python):
abc = sorted([int(i) for i in input().split()])

print(int(abc[0] * abc[1] / 2))

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

Solution (Python):
v = sorted([int(i) for i in input().split()])
print(v[0]*v[1]//2)

Solution (Python):
ab, bc, ca = map(int, input().split())

print(ab * bc // 2)

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

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

Solution (Python):
AB, BC, CA = map(int, input().split())
print(AB*BC//2)

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

Solution (Python):

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

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

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

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

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

Solution (Python):
a,b,c = map(int,input().split())
print(int(0.5*a*b))

Solution (Python):
A,B,C= map(int,input().split())

print(int(A*B//2))

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

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

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

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

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

Solution (Python):
import bisect
import cmath
import heapq
import itertools
import math
import operator
import os
import re
import string
import sys
from collections import Counter, deque, defaultdict
from copy import deepcopy
from decimal import Decimal
from fractions import gcd
from functools import lru_cache, reduce
from operator import itemgetter, mul, add, xor

import numpy as np

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

sys.setrecursionlimit(10 ** 9)
INF = float("inf")
IINF = 10 ** 18
MOD = 10 ** 9 + 7

a, b, _ = list(map(int, sys.stdin.buffer.readline().split()))
print(int(a * b // 2))

Solution (Python):


hen = sorted([int(i) for i in input().rstrip().split(" ")])
ans = int(hen[0] * hen[1] / 2)
print(ans)

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

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

Solution (Python):
a=sorted([int(i) for i in input().split()])
print(a[0]*a[1]//2)

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

Solution (Python):
AB, BC, CA = map(int, input().split())
S = int(AB*BC*(1/2))
print(S)

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

Solution (Python):
l=list(map(int, input().split()))

result=int(l[0]*l[1]*0.5)
print(result)

Solution (Python):
a, b, c = map(int, input().split())

print(int(a*b/2))

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

Solution (Python):
a,b,c = map(int,input().split())
print(int(0.5*a*b))

Solution (Python):
INT = lambda: int(input())
INTM = lambda: map(int,input().split())
STRM = lambda: map(str,input().split())
STR = lambda: str(input())
LIST = lambda: list(map(int,input().split()))
LISTS = lambda: list(map(str,input().split()))
def do():
    a=LIST()
    a.sort()
    print(a[0]*a[1]//2)
if __name__ == '__main__':
    do()

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

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

Solution (Python):
ab, bc, ac = map(int,input().split())

print(int(ab * bc * ac / max(ab,bc,ac) / 2 ))

Solution (Python):
AB, BC, CA = map(int, input().split())
print(int(0.5 * AB * BC))

Solution (Python):
ab,bc,ca = map(int,input().split())

ans = ab*bc//2
print(ans)

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

Solution (Python):
N = list(map(int,input().split()))
print(int(N[0]*N[1]/2))

Solution (Python):
def solve():
    AB, BC, CA = map(int, input().split())
    print(BC * AB // 2)


if __name__ == '__main__':
    solve()

Solution (Python):
a,b,_=map(int,input().split())
print(a*b//2)

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

Solution (Python):
li = list(map(int,input().split()))
print(int(li[0]*li[1]/2))

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

Solution (Python):
sides = [int(x) for x in input().strip().split()]
sides.sort()
print(sides[0] * sides[1] // 2)

Solution (Python):
h, w, _ = [int(i) for i in input().split()]
ans = h * w // 2
print(ans)

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

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

Solution (Python):
T = list(map(int, input().split()))
T.sort()

print(T[0] * T[1] // 2)

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

Solution (Python):
import math

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

Solution (Python):
*abc, = sorted(map(int, input().split()))
print(abc[0]*abc[1]//2)

Solution (Python):
AB, BC, CA = map(int, input().split())

print(AB * BC // 2)

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

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

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

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

Solution (Python):

h,w,_ = map(int, input().split())

print(h*w//2)

Solution (Python):
AB, BC, CA = map( int, input().split() )
print( ( AB * BC ) // 2 )

Solution (Python):
AB, BC, CA = list(map(int, input().split()))
print(int((AB * BC) / 2))

Solution (Python):
A,B,C = list(map(int,input().split()))

print(int(A*B*0.5))

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

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

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

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

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

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

Solution (Python):
a=list(map(int,input().split()))
a.sort()
print(a[0]*a[1]//2)

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

Solution (Python):
a,b,c=map(int,input().split())
print(min(a,b)*min(max(a,b),c)//2)

Solution (Python):
ab, bc, ac = [int(x) for x in input().split()]
print(int((ab*bc)/2))

Solution (Python):
a,b,c=map(int,input().split())

print(int(a*b/2))

Solution (Python):
AB, BC, CA = map(int, input().split())
print(BC * AB // 2)

Solution (Python):





a,b,c = map(int,input().split())

print((a*b)//2)

Solution (Python):
L=sorted(list(map(int,input().split())))
print(L[0]*L[1]//2)

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

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

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

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

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

Solution (Python):
import sys
input = sys.stdin.readline
import numpy as np
L = [int(x) for x in input().rstrip().split()]
L = sorted(L)
print(int((1/2) * L[0] * L[1]))

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

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

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

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

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

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

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

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

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

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

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

Solution (Python):
s=sorted(list(map(int, input().split())))
print(s[0]*s[1]//2)

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

Solution (Python):
a,b,c = map(int,input().split())

print((a*b)//2)

Solution (Python):

A,B,C=map(int, input().split())  

print(int(A*B/2))

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

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

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

Solution (Python):
ab, bc, ca = map(int, input().split())

print(int(ab * bc / 2))

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

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

Solution (Python):
AB, BC, CA = map(int, input().split(" "))
print(AB * BC // 2)

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

Solution (Python):

import sys
input = sys.stdin.readline
sys.setrecursionlimit(10**6)

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

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

Solution (Python):


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

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

Solution (Python):
a,b,_=map(int, input().split());print(int(a*b/2))

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

Solution (Python):
ab, bc, ca = map(int, input().split())
print(int(ab * bc * 0.5))

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

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

Solution (Python):

import math





A, B, C = map(int, input().split())

print (int((A*B)/2))

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

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

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

Solution (Python):
AB, BC, CA = map(int, input().split())

area = AB * BC / 2
print(int(area))

Solution (Python):
AB, BC, CA = list(map(int, input().split()))
print(AB * BC // 2)

Solution (Python):
AB,BC,CA=map(int,input().split())
print(AB*BC//2)

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

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

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

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

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

Solution (Python):
import sys
input = sys.stdin.readline
A, B, C = map(int, input().split())
print(A * B // 2)

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

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

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

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

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

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

AREA = x*y

AREA2 =(AREA//2) 


print(AREA2)

Solution (Python):
lst = list(map(int,input().split()))
h = lst[0]
b = lst[1]
print((h*b)//2)

Solution (Python):
list1 = list(map(int,input().split()))
list1.sort()
print(int(list1[0]*list1[1]/2))

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

Solution (Python):
a, b, c = map(int, input().split())

print(a * b // 2)

Solution (Python):
l = list(map(int, input().split()))

ans = l[0] * l[1] / 2
print(int(ans))

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

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

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

Solution (Python):
N = list(map(int, input().split()))
N.sort()
print(N[0]*N[1]//2)

Solution (Python):
def main():
    array = list(map(int,input().split()))

    array.sort()
    array = array[:-1]
    print(int(array[0]*array[1]/2))

if __name__ == '__main__':
    main()

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

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

Solution (Python):
A,B,C = (int(i) for i in input().split())

ans = A * B // 2
print(ans)

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

Solution (Python):
AB,BC,CA=map(int,input().split())
print(AB*BC//2)

Solution (Python):
a,b,c=map(int,input().split())

print(int(a*b/2))

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

Solution (Python):

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

Solution (Python):
a, b, c = map(int, input().split())
list = sorted([a,b,c])
print(list[0] * list[1] // 2)

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

Solution (Python):
data = list(map(int,input().split()))

print(int(data[0]*data[1]/2))

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

L,M,N = list(map(int,input().split(' ')))

print(L*M//2)

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

Solution (Python):
ab, bc, ca = [int(a) for a in input().split()]
print (int(ab * bc / 2))

Solution (Python):
AB, BC, CA = map(int, input().split())
print(AB * BC // 2)

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

(AB, BC, CA) = [int(n) for n in input().split()]

print (BC * AB // 2)

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

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

Solution (Python):
sides = sorted(map(int, input().split()))
print(sides[0] * sides[1] // 2)

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

Solution (Python):
a,b,c = map(int,input().split())

print(a*b//2)

Solution (Python):
AB , BC , CA = map(int , input().split())

S = AB * BC // 2


print(S)

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

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

Solution (Python):

import sys










def main():
    a, b, c = (int(x) for x in sys.stdin.readline().split())
    print(a * b // 2)



if __name__ == "__main__":
    main()

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

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

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

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

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

Solution (Python):
ab,bc,ca = map(int, input().split())

ret = ab*bc//2

print(ret)

Solution (Python):
A = list(map(int, input().split()))
A.sort()
print(int(A[0]*A[1]*0.5))

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

Solution (Python):
a, b, c = map(int,input().split())
if a**2 + b**2 == c**2:
  print(a*b//2)
elif c**2 + b**2 == a**2:
  print(b*c//2)
else:
  print(a*c//2)

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

Solution (Python):
AB, BC, CA = map(int, input().split())

print(int(AB*BC/2))

Solution (Python):
import sys
import math as mp

a,b,c = map(int, input().split())
p=int((a+b+c)/2)
print(int(mp.sqrt(p*(p-a)*(p-b)*(p-c))))

Solution (Python):
import sys
def input(): return sys.stdin.readline().strip()

def main():
    ab,bc,_=map(int,input().split())
    print(ab*bc//2)

main()

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

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

Solution (Python):
xs = list(map(int,input().split()))

xs.sort()

print(xs[0] * xs[1] // 2)

Solution (Python):
a, b, c = map(int, input().split())
area = 0.5 * a * b
print(int(area))

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

Solution (Python):
t = list(map(int, input().split()))

t.sort()

print(int(t[0] * t[1] / 2))

Solution (Python):

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

Solution (Python):
a,b,c = map(int, input().split())
print(int(a*b*0.5))

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

Solution (Python):
a, b, c = [int(i) for i in input().split()]
print(a * b // 2)

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

Solution (Python):
a, b, c = map(int, input().split())
print(int(a*b*0.5))

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

Solution (Python):




def main():
    x, y, z = map(int, input().split())
    print(int(x*y*0.5))

if __name__ == '__main__':
    main()

Solution (Python):
AB,BC,CA = map(int, input().split())
print(int(AB*BC/2))

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

Solution (Python):
abc=list(map(int,input().split()))
abc.sort()
print(abc[0]*abc[1]//2)

Solution (Python):
AB,BC,CA = map(int,input().split())
print(int(AB * BC / 2))

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

Solution (Python):
from sys import stdin

a,b,c = [int(x) for x in stdin.readline().rstrip().split()]

print(a*b//2)

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

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

Solution (Python):
L = [int(x) for x in input().split()]
L.sort
S = (L[0]*L[1])//2
print(S)

Solution (Python):
a, b, c = sorted([int(x) for x in input().split()])
print(a * b // 2)

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

Solution (Python):
n,a,b=map(int,input().split())
x=[]
x.append(n)
x.append(a)
x.append(b)
x.sort()
print(int(x[0]*x[1]/2))

Solution (Python):
AB, BC, CA = map(int, input().split())

print(min(AB*BC, BC*CA, CA*AB) // 2)

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

Solution (Python):
AB, BC, CA = map(int, input().split())
print(int(AB*BC/2))

Solution (Python):

AB,BC,CA = map(int,input().split())

print((AB*BC)//2)

Solution (Python):
ab, bc, ca = map(int, input().split())




print(int(ab*bc/2))

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

Solution (Python):
a,b,c=map(int,input().split())

print(int((a*b)/2))

Solution (Python):
ab, bc, ca = map(int, input().split())

print(int(ab * bc / 2))

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

Solution (Python):
v, h, s = map(int, input().split())

print(int(v * h / 2))

Solution (Python):
A = sorted([int(i) for i in input().split()])
ans = A[0] * A[1] //2
print(ans)

Solution (Python):
ab, bc, ca=map(int, input().split())

print(int(ab* bc/2))

Solution (Python):
a, b, c = map(int, input().split())

print(a * b // 2)

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

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

Solution (Python):
X = list(map(int, input().split()))
X.sort()

print(int(X[0]*X[1]/2))

Solution (Python):
a=list(map(int, input().split()))
a.remove(max(a))
print(a[0]*a[1]//2)

Solution (Python):
AB,BC,CA = map(int,input().split())
print(int(AB*BC/2))

Solution (Python):
li=list(map(int,input().split()))
li.sort()
print((li[0]*li[1])//2)

Solution (Python):
import math
a,b,c=sorted(map(int,input().split()))
print(math.floor(a*b/2))

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

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

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

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

Solution (Python):
AB,BC,CA = map(int,input().split())
S = AB * BC / 2
print(int(S))

Solution (Python):
a, b, c = map(int, input().split())

print(a*b // 2)

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

Solution (Python):
a, b, c = map(int, input().split())

print(round(a*b/2))

Solution (Python):
ab,bc,ca = map(int, input().split())

ans = int(( ab * bc ) / 2)
print(ans)

Solution (Python):
l = [int(x) for x in input().split()]
print(int(l[0]*l[1]*l[2]/2/max(l)))

Solution (Python):
a,b,c = list(map(int,input().strip().split()))
ans = int(a * b / 2)
print(ans)

Solution (Python):
A , B , _ = map(int,input().split())
print(A * B // 2)

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

Solution (Python):
A,B,C=map(int,input().split())

print(int(A*B/2))

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

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

x.sort()

print(x[0] * x[1] // 2)

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

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

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

Solution (Python):
def main():
    AB,BC,CA = map(int, input().split())
    print(round((AB*BC)/2))

if __name__ == "__main__":
    main()

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

Solution (Python):
A,B,_ = map(int,input().split())
print(A*B//2)

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

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

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

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

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

Solution (Python):
n = list(map(int, input().split()))
n.sort()
print(n[0] * n[1] // 2)

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

Solution (Python):
AB,BC,CA = map(int,input().split())
print(int(AB*BC/2))

Solution (Python):
AB, BC, CA = map(int, input().split())

print(AB*BC//2)

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

Solution (Python):
import math


def func():
    str = input()
    x, y, z = str.split()
    x = int(x)
    y = int(y)
    z = int(z)
    print(int((x*y)/2))


if __name__ == "__main__":
    func()

Solution (Python):
AB, BC, CA=(int(x) for x in input().split())

print(int(AB * BC / 2))

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

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

Solution (Python):
AB ,BC , CA = map(int,input().split())
print(AB*BC //2)