有些人非常热爱桌游,以至于开始发明自己的游戏。Bob 发明了一个游戏,其规则过于复杂,我们只提供其中的一小部分。
共有 $n+1$ 名玩家,每人持有一张“能量变化卡”。卡片上的数值为正整数或负整数,且它们的绝对值各不相同(例如,如果有一张值为 $4$ 的卡片,则不会有值为 $-4$ 的卡片)。没有值为 $0$ 的卡片。
其中一名玩家获得“目标”标记,这意味着其他 $n$ 名玩家必须攻击他。
游戏中的攻击方式如下:两名随机玩家同时展示他们的能量变化卡,其数值的乘积会被加到目标玩家的能量值上(哦,我们忘了提,每名玩家都有一个能量值)。由于卡片数值既有正数也有负数,乘积也可能为正或为负,因此能量值可能会增加或减少。当然,目标玩家希望增加自己的能量值。
在新游戏的测试运行中,Bob 获得了目标标记。鉴于这个游戏是他发明的,Bob 模糊地记得,应该恰好有 $k$ 个无序的攻击者对,使得他们的能量变化卡数值之和为正数——这是他在很久以前将规则从加法改为乘法之前学到的。
这能否帮助找到现在能增加 Bob 能量值的无序玩家对的最大数量?
输入格式
输入仅一行,包含两个空格分隔的整数 $n$ 和 $k$ ($2 \le n \le 10^9, 0 \le k \le 10^{18}$)。
输出格式
如果输入数据自相矛盾,这意味着 Bob 记错了数字,不可能恰好有 $k$ 个无序的玩家对使得卡片数值之和为正,则输出 $-1$。
否则,输出一行,包含一个整数,表示能增加 Bob 能量值的无序玩家对的最大数量。
样例
样例输入 1
2 1
样例输出 1
1
样例输入 2
30 374
样例输出 2
354