游戏钦点
题号:NC21705
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld

题目描述

牛牛和牛妹正在玩一个游戏,这个游戏会进行若干轮(也可能是0轮),但是你不知道确定的轮数
游戏的轮次从1开始标号,每一轮游戏两人中的一人会获胜,第i轮的获胜者会得到2*i - 1的分数
给你两个整数x,y,判断是否可能在游戏结束的时候牛军获得了x分,牛妹获得了y分
如果可能的话输出牛牛最少需要赢的轮数
否则输出-1

输入描述:

输入一行包含两个整数x,y

0 ≤ x, y ≤ 1012

输出描述:

输出一个整数
示例1

输入

复制
0 0

输出

复制
0
示例2

输入

复制
17 8

输出

复制
3
示例3

输入

复制
9 9

输出

复制
-1
示例4

输入

复制
500000 500000

输出

复制
294

备注:

子任务1:max(x, y) <= 1000
子任务2:max(x, y) <= 1000000
子任务3:无限制