![](https://i-blog.csdnimg.cn/blog_migrate/49bb7fdd92d7e49f1b850cf37652aa29.png)
此公式可以化简为:
x=k*mod(x,b)*b+mod(x,b) 即x=(k*b+1)*mod(x,b),k可以枚举,b已知,而mod(x,b)的取值是1~b,可以通过公式直接求出。
//171 ms 100 KB
#include<stdio.h>
#include<string.h>
#define ll long long
#define mod 1000000007
int main()
{
ll a,b;
while(scanf("%I64d%I64d",&a,&b)!=EOF)
{
ll ans=0;
for(ll i=1;i<=a;i++)
{
ll c=(i*b+1)%mod;
ll d=((b-1)*b/2)%mod;
ans=(ans+c*d)%mod;
}
printf("%I64d\n",ans);
}
return 0;
}