Quantcast
Channel: CSDN博客推荐文章
Viewing all articles
Browse latest Browse all 35570

BZOJ1011(HNOI2008)[遥远的行星]--估计

$
0
0

【链接】
bzoj1011

【解题报告】

这题看题解才知道是估计题,可以发现用 ji2作为分母能够得到较为精确的答案。于是装作 MjA×ji=1Miji2 是答案就行了。

#include<cstdio>
using namespace std;
const int maxn=100005;
int n;
double A,ans,a[maxn],sum[maxn];
int main()
{
    freopen("1011.in","r",stdin);
    freopen("1011.out","w",stdout);
    scanf("%d%lf",&n,&A);
    for (int i=1; i<=n; i++) scanf("%lf",&a[i]),sum[i]=sum[i-1]+a[i];
    for (int i=1; i<=n; i++)
    {
        int j=A*i+1e-8; ans=0;
        if (j<=1000) for (int k=1; k<=j; k++) ans+=a[i]/(i-k)*a[k];
         else ans+=a[i]/(i-j/2)*sum[j];
        printf("%.6lf\n",ans);
    }
    return 0;
}
作者:CHNWJD 发表于2017/10/31 7:27:25 原文链接
阅读:24 评论:0 查看评论

Viewing all articles
Browse latest Browse all 35570

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>