求助,有没有不用矩阵快速幂的做法或调一下我的代码:
#include<cstdio>
#include<iostream>
using namespace std;
int a,b,ans;
int main()
{
int p,q,n,m;
scanf("%d%d%d%d%d%d",&p,&q,&b,&a,&n,&m);
if(n==1){
cout<<b%m;
return 0;
}
if(n==2){
cout<<a%m;
return 0;
}
p%=m;
q%=m;
a%=m;
b%=m;
for(int i=3;i<=n;i++){
ans=(p*a+q*b)%m;
b=a;
a=ans;
}
printf("%d",ans);
return 0;
}