记录编号 | 425580 | 评测结果 | AAAAAAAAAAAAAAAAAAAA | ||
---|---|---|---|---|---|
题目名称 | [国家集训队2011]单选错位 | 最终得分 | 100 | ||
用户昵称 | 是否通过 | 通过 | |||
代码语言 | C++ | 运行时间 | 0.444 s | ||
提交时间 | 2017-07-15 15:00:16 | 内存使用 | 5.77 MiB | ||
#include<iostream> #include<cstring> #include<cstdio> using namespace std; inline int read(){ int sum(0); char ch(getchar()); for(;ch<'0'||ch>'9';ch=getchar()); for(;ch>='0'&&ch<='9';sum=sum*10+(ch^48),ch=getchar()); return sum; } int n,A,B,C; int a[10000001]; double ans(0); inline double my_max(double a,double b){ return a>b?a:b; } inline int gg(){ freopen("nt2011_exp.in","r",stdin); freopen("nt2011_exp.out","w",stdout); n=read(),A=read(),B=read(),C=read(),a[1]=read(); 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; for(int i=1;i<n;i++) ans+=1.0/my_max(a[i],a[i+1]); ans+=1.0/my_max(a[1],a[n]); printf("%.3f",ans); return 0; } int k(gg()); int main(){;}