ans = 总方案 - 不发疯的方案
要在求幂过程中取模
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
#define mod 1000000007
long long pow(long long x,long long y)
{
if(y==1)
{
return x%mod;
}
long long half=pow(x,y/2);
if(i%2==0)
{
return half*half%mod;
}
else return (((half*half)%mod)*x)%mod;
}
int main ()
{
long long n,m,ans=0;
cin>>n>>m;
ans=(pow(m,n-1)-pow(m-1,n-1)+mod)%mod;
ans=((m%mod)*ans)%mod;
cout<<ans<<endl;
return 0;
}