AtCoder Beginner Contest 163 D.Sum of Large Numbers
简单的找规律题~
我们取
个数时,不难发现,最小的取值就是
个数的最小取值
,最大的取值就是
个数的最大取值
,而取值个数就是
,遍历一遍更新答案即可,AC代码如下:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll mod=1e9+7;
int main(){
ll n,k;
cin>>n>>k;
ll ans=0;
for(ll i=k;i<=n+1;i++){
ll l=i*(i-1)/2;
ll r=(n+n-i+1)*i/2;
ans=(ans+r-l+1)%mod;
}
cout<<ans;
return 0;
}