思路:
当前选项是下个题目的正确答案的概率是 1 a i \frac{1}{a_i} ai1,但选项个数不同,在两个选项中取最大值就可以了(显然(
c o d e code code
#include<iostream>
#include<cstdio>
using namespace std;
int n, A, B, C;
long long a[10011000];
int main()
{
scanf("%d%d%d%d%d", &n, &A, &B, &C, a+1);
for (int i=2; i<=n; i++)
a[i]=((long long)a[i-1]*A+B)%100000001;
for (int i=1; i<=n; i++)
a[i]=a[i]%C+1;
double ans=(double)(1.0/max(a[1], a[n]));
for(int i=2; i<=n; i++)
ans+=(double)(1.0/max(a[i], a[i-1]));
printf("%.3lf", ans);
return 0;
}