提交时间:2024-11-12 14:33:08
运行 ID: 34652
#include<bits/stdc++.h> #define ll long long using namespace std; const int mod=1e9+7; int calc(ll L,ll R){ int ans=0; int pl=floorl(sqrtl(L-0.75)+0.5); int pr=ceill(sqrtl(R+0.25)-0.5); for(ll i=pl;i<=pr;i++){ long long l=max(i*i-i+1,L),r=min(i*i+i,R); int f=(i%2)*2-1; int v=1ll*((l+r)%mod)*((r-l+1)%mod)%mod; v=1ll*v*(mod+1)/2%mod; ans=(ans+v*f)%mod; }return (ans+mod)%mod; } int main(){ long long l,r;cin>>l>>r; cout<<calc(l,r); }