def gcd(a,b): if b > a: t = b b = a a = t if a % b == 0: return b else: return gcd(b, a%b) def solve(m,n): if m < n: return solve(n,m) + 1 elif n == 1: return m-1 else: return solve(m%n, n) + m/n m,n = map(int, raw_input().split()) d = gcd(m,n) m /= d n /= d print solve(m,n)