1443: 简单和
时间限制: 2 Sec 内存限制: 128 MB提交: 249 解决: 12
[提交][状态][讨论版]
题目描述
对于一个自然数集合,求每个区间 [a,b] 的值
输入
题目有多组 输入<10^6组
每行为两个数a,b(0<a,b<=10000)
while(~scanf("%d%d",&a,&b)){}可以自动终止读入
输出
对每组输入 输出自然数,表示 和
样例输入
186 6907
0 2475
39 3742
127 2546
195 8529
1 485
155 4754
样例输出
23839573 3064050 7002412 3234330 36357270 117855 11290700
题解:a+……+b=(a+b)*(b-a+1)/2
代码如下
#include<iostream>
using namespace std;
main()
{
int a,b,i,j,k;
while (cin>>a>>b)
{
j=(a+b)*(b-a+1);
k=j/2;
cout << k<<endl;
}
}