- 题库:洛谷
- 题号:3306
- 题目:随机数生成器
- link:https://www.luogu.com.cn/problem/P3306
观察题目,易得出暴力代码,但是会TLE,只能得20pts
1 #include<bits/stdc++.h> 2 #define ll long long 3 using namespace std; 4 int T; 5 ll a, b, x1, t, p, ans; 6 int main() 7 { 8 scanf("%d", &T); 9 while(T--) 10 { 11 ans = 0; 12 scanf("%lld %lld %lld %lld %lld", &p, &a, &b, &x1, &t); 13 while(233) 14 { 15 ++ans; 16 if(ans > p) 17 { 18 puts("-1"); 19 break; 20 } 21 if(x1 == t) 22 { 23 printf("%lld\n", ans); 24 break; 25 } 26 x1 = (x1 * a + b) % p; 27 } 28 } 29 return 0; 30 }