def min_moves(Gx, Gy): # 特殊情况:目标点是原点 if Gx == 0 and Gy == 0: return 0 # 检查是否可以使用象(Bishop)一步到达 if abs(Gx) == abs(Gy): return 1 # 象一步到达 # 如果 Gx 和 Gy 符号相同,象可能需要两步到达 if (Gx > 0 and Gy > 0) or (Gx < 0 and Gy < 0): return 2 # 如果 Gx 和 Gy 符号不同,或者无法使用象到达,使用车 return 2 # 车两步到达 # 读取输入 Gx, Gy = map(int, input().split()) # 计算并输出最小步数 print(min_moves(Gx, Gy))