# Enter your code here. Read input from STDIN. Print output to STDOUT #! /usr/bin/python storage={} def maxmin(m,n): if m>n: return (m,n) else: return (n,m) def cut( m,n ): m,n=maxmin(m,n) if n==1: return m-1 global storage if (m,n) in storage: return storage[(m,n)] half1=m/2 half2=m-half1 result=cut(half1,n)+cut(half2,n)+1 storage[(m,n)]=result return result m,n = map(int,raw_input().strip().split()) print cut(m,n)