#P1536. 小 X 与小和尚(sum)

小 X 与小和尚(sum)

题目描述

研究了这么多学术性的问题,小 X 想听个故事来放松一下自己的大脑。而小 X 最喜欢听的是这样一个故事: 从前有座山 , 山 里有座庙, 庙里有个老和尚和小和尚,老和尚给小和尚讲故事: 从前有座山 , 山里有座庙, 庙里有个老和尚和小和尚,老和尚给小和尚讲故事: 从前有座山……

不过讲着讲着,老和尚也有点累了,所以这一次老和尚不给小和尚讲故事了,老和尚要求小和尚去敲木鱼。 这个敲木鱼是有讲究的,在开始敲之前老和尚会告诉小和尚一个数 nn 。而小和尚在敲的时候, 第一次敲 11 下, 第二次敲 22 \dots nn 次敲 nn 下, 第 n+1n+1 次敲 nn 下, 第 n+2n+2 次敲 n1n-1 \dots 2×n2 \times n 次敲 11 下,第 2×n+12 \times n+1 次敲 11 下, 第 2×n+22 \times n+2 次敲 22 \dots

如果用一个简单的数列 来表示小和尚 每次敲了多少 下,那应该是: $1, 2, 3, \dots , n-1, n, n, n-1, n-2, \dots , 3, 2, 1, 1, 2, 3, \dots $ 。

简单说来就是 11nnnn1111nn 一直这么循环地敲下去。

小和尚数着数着就不记得自己敲了多少下了,而他只记得自己刚刚敲完第 mm 次。 马上老和尚就要来检查小和尚是不是在认真的敲了,小和尚没办法, 只能求助于你, 希望你能告诉他, 敲完第 mm 次的时候,他一共敲了多少下?

输入

输入数据共有一行包含两个用空格隔开的整数表示 nnmm

输出

输出数据仅有一行包含一个正整数 ansans , 表示最后小和尚一共敲了 ansans 下。

注意运算时数据可能比较大, C++ 选手请使用 long long。

样例

3 8
15

说明

【数据范围】

对于 40%40\% 的数据, 1m1000001 ≤ m ≤ 100000

对于另外 30%30\% 的数据, n=2n = 2

对于 100%100\% 的数据, 1n101 ≤ n ≤ 101m10000000001 ≤ m ≤ 1000000000

【样例解释】

小和尚共敲了 88 次木鱼, 第一次敲了 11 下, 第二次敲了 22 下, 第三次敲了 33 下, 第四次敲了 33 下, 第五次敲了 22 下, 第六次敲了 11 下, 第七次敲了 11 下, 第八次敲了 22 下,总共敲了 1515 下。