题解:CF2033F Kosuke's Sloth
数学题。
题意
定义
多测,结果对
例如:
前置芝士
皮萨诺周期:斐波那契数列取模
证明略。还不是因为不会
思路
暴力枚举出倍数,乘上
代码
#include<bits/stdc++.h>
using namespace std;
const long long mod=1e9+7;
int main()
{
int t,k;
long long n;
cin>>t;
while(t--)
{
cin>>n>>k;
if(k==1) cout<<n%mod<<'\n';//特判
else
{
int a1,a2,a3=0,ans=0;
a1=a2=1;//斐波那契数列初始化f(1)=f(2)=1
for(int i=3;;i++)//暴力枚举找出倍数
{
a3=(a1+a2)%k;
if(!a3)
{
ans=i;
break;
}
a1=a2;
a2=a3;
}
cout<<n%mod*ans%mod<<'\n';//取模+输出
}
}
return 0;
}