仰望星空 ecnu

你就这样静坐在草地上,离我稍远的地方。
我用眼角瞅着你,你什么话也别说。
语言是误会的根源。
但是,每天,你可以坐得离我近一些……

你和她一起仰头仰望着布满星辰的天空。你的星星对她而言只不过是众星中的一颗。

她会喜欢仰望天际所有的繁星,他们都会是她的朋友。但你深信你不会是万众中一颗毫不起眼的星星。

于是你默默地记录着每天你们仰望星空时的距离,你发现每天你们的距离或许减少、或许不变,但一定不会增加。

可是你们在一起仰望星空的日子太长了,长到你只记得你们第一天在星空下的距离。

今天,你们的距离是 A;你们又在一起仰望星空了。你却突然想知道一起仰望星空 N 天来,你们之间的距离之和。

由于你已经不记得每天的距离,只能依稀记起第一天的距离是 B,所以你只想知道你们这么多天来的距离之和有多少种不同的可能性。

输入

输入数据包含一行,包含三个整数 N,A,B (2N109,1AB109),分别表示你们一起仰望星空的天数、今天你们之间的距离以及第一天你们之间的距离。

输出

输出数据包含一行一个整数,表示不同可能和的个数。

样例

input
3 1 2
output
2

提示

对于样例有以下几种不同的距离情况:{2,1,1},{2,2,1};他们的和分别是 4 和 5,所以有两种不同的和。

 题意:
一共n天,每天只可以减少不可以增加,从b减到a;
例:7 1 5
{5555551}
{5555541}
{5555531}
...
{5111111}
所以得到sum=b*(n-1)+a-(a*(n-1)+b)+1
#include<iostream>
using namespace std;
int main()
{
	long long n,a,b;
	cin>>n>>a>>b;
	long long sum=(b-a)*(n-2)+1;
	cout<<sum;
}

  

猜你喜欢

转载自www.cnblogs.com/mozheaishang/p/10085524.html