第三题求助
为什么第3题O(n)算法只有40分?
#include<bits/stdc++.h>
using namespace std;
#define mod 10007
#define ll long long
int main()
{
ll n,m;
cin>>n>>m;
ll a=m%mod;
ll b=a*(m-1)%mod;
ll c=b*(m-2)%mod;
for(int i=4;i<=n;++i)
{
a=(b*(m-1)+c*(m-2))%mod;
b=c;
c=a;
}
cout<<c<<endl;
return 0;
}