编程题
### 问题描述
小蓝和他的同学们坐在一张圆桌前,总共 $n$ 个人,编号 $1 \sim n$。
小蓝的编号是 $1$,他们面前有 $m$ 个糖果。从小蓝开始分糖果,小蓝可以选择一个整数 $x$,他先从中拿 $x$ 个,然后一个人(编号为 $2$)拿 $x+1$ 个,再下一个人拿 $x+2$ 个,以此类推,每一个人都是拿上一个人的数量加一个。当第 $n$ 个人都拿完后,又轮到小蓝,小蓝再拿 $x+n$ 个,再以此循环下去。
直到桌子上的糖果数量不足以满足某个人的要求,那么就会停下来。为了公平,每个人都需要拿过**至少**一次糖果。
小蓝想知道,在满足上述要求的情况下,小蓝最多能获得多少个糖果。
### 输入格式
输入一行,包含两个整数 $n,m$。
### 输出格式
输出一个整数,代表小蓝能拿到的最多的糖果数量。
### 样例输入
```
5 25
```
### 样例输出
```
7
```
### 说明
小蓝一开始选择整数 $1$,那么小蓝第一轮能拿到 $1$ 个,第二轮能拿到 $6$ 个。
### 评测数据范围
$1 \le n \le 10^3, n^2 \le m \le 10^7$。