为什么最后两个点re啊
查看原帖
为什么最后两个点re啊
353396
woooooook楼主2021/2/22 21:30

RT

#include<bits/stdc++.h>
using namespace std;
const int N=1001000,mod=100000001;
long long n,a[N],A,B,C;double ans;
int main(){
	scanf("%d%d%d%d%d",&n,&A,&B,&C,a+1);
	for(int i=2;i<=n;i++)a[i]=(a[i-1]*A+B)%mod;
	for(int i=1;i<=n;i++)a[i]=a[i]%C+1;
	for(int i=1;i<n;i++)
		ans+=1.0/max(a[i],a[i+1]);
	ans+=1.0/max(a[1],a[n]);
	printf("%.3lf",ans);
	return 0; 
}
2021/2/22 21:30
加载中...