巨大的斐波那契数!
复制代码
1 #include <iostream> 2 #include <cstdio> 3 #include <cmath> 4 #include <algorithm> 5 #include <vector> 6 #define ll unsigned long long 7 using namespace std; 8 9 ll qmod(ll a, ll b, ll mod) 10 { 11 ll ans = 1; 12 a = a%mod; 13 while (b) 14 { 15 if (b & 1) 16 { 17 ans = (ans*a) % mod; 18 } 19 b = b / 2; 20 a = (a*a) % mod; 21 } 22 return ans; 23 } 24 25 int main() 26 { 27 int t; 28 cin >> t; 29 while (t--) 30 { 31 ll a, b, n, cnt; 32 cin >> a >> b >> n; 33 cnt = 0; 34 vector <ll> fib; 35 fib.push_back(0); 36 fib.push_back(1); 37 for (int i = 2; i <= n*n; i++) 38 { 39 fib.push_back((fib[i - 1] + fib[i - 2]) % n); 40 cnt++; 41 if (fib[i] == 1 && fib[i - 1] == 0) 42 { 43 break; 44 } 45 } 46 if (n != 1) 47 cout << fib[qmod(a, b, cnt)] << endl; 48 else 49 { 50 cout << "0" << endl; 51 } 52 } 53 //system("pause"); 54 return 0; 55 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步