Sasha and His Trip CodeForces - 1113A

Sasha is a very happy guy, that's why he is always on the move. There are nn cities in the country where Sasha lives. They are all located on one straight line, and for convenience, they are numbered from 11 to nn in increasing order. The distance between any two adjacent cities is equal to 11 kilometer. Since all roads in the country are directed, it's possible to reach the city yy from the city xx only if x<yx<y.

Once Sasha decided to go on a trip around the country and to visit all nn cities. He will move with the help of his car, Cheetah-2677. The tank capacity of this model is vv liters, and it spends exactly 11 liter of fuel for 11 kilometer of the way. At the beginning of the journey, the tank is empty. Sasha is located in the city with the number 11 and wants to get to the city with the number nn. There is a gas station in each city. In the ii-th city, the price of 11 liter of fuel is ii dollars. It is obvious that at any moment of time, the tank can contain at most vv liters of fuel.

Sasha doesn't like to waste money, that's why he wants to know what is the minimum amount of money is needed to finish the trip if he can buy fuel in any city he wants. Help him to figure it out!

Input

The first line contains two integers nn and vv (2n1002≤n≤100, 1v1001≤v≤100)  — the number of cities in the country and the capacity of the tank.

Output

Print one integer — the minimum amount of money that is needed to finish the trip.

Examples

Input
4 2
Output
4
Input
7 6
Output
6

本题难度并不大,sasha共需使用n-1升油,车载容量为v,因为第i个城市油价为i,且需算出最便宜的加油方案,可知必须尽量在靠前的站点加油。

因此,此时出现两种情况。

  1. 车载容量v要大于或等于n-1 :此时只在第一站加够油即可;
  2.车载容量v要小于n-1 :此时应在第一站加满v,接下来每站都补充一升油直至v升油已足够到达目的地。

#include<stdio.h>
int main()
{
int n, v, money;
while(~scanf("%d%d", &n, &v))
{
if(n-2<v)
printf("%d\n", n-1);
else
{
money = v + (2 + n-v)*(n-v-1)/2;
printf("%d\n", money);
}
}
return 0;
}

转载于:https://www.cnblogs.com/hear0/p/10424456.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值