(1 + sqrt(3))^ nの値を見つける必要があります。ここで、n <10 ^ 9です。この数値は非常に大きくなる可能性があるため、ans%1000000007を出力する必要があります。このために次の関数を作成しました。
double power(double x, int y)
{
double temp;
if( y == 0)
return 1;
temp = power(x, y/2);
if (y%2 == 0)
return temp*temp;
else
{
if(y > 0)
return x*temp*temp;
else
return (temp*temp)/x;
}
}
さて、モジュロ条件の扱い方がわかりません。誰か助けてくれませんか。