#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
void solve(){
ll l;ll r;
cin>>l>>r;
ll c=r-2*l+1;
ll ans=(c+1)*c/2;
if(ans<=0)cout<<0<<'\n';
else cout<<ans<<'\n';
}
int main(){
int t;
cin>>t;
while(t--)solve();
return 0;
}
上面这份代码没过,下面过了,有啥区别吗,也没有超long long 的范围啊
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
void solve(){
ll l;ll r;
cin>>l>>r;
ll c=r-2*l+1;
if(c<=0){cout<<0<<'\n';return;}
ll ans=(c+1)*c/2;
cout<<ans<<'\n';
}
int main(){
int t;
cin>>t;
while(t--)solve();
return 0;
}