zoukankan      html  css  js  c++  java
  • 2016-2017 ACM-ICPC Pacific Northwest Regional Contest (Div. 1) Problem K Tournament Wins

    Problem K — limit 1 second Tournament Wins

    这个题就是有2^n队伍,他现在的实力水平是第k位,采用的是淘汰制

    问一下你他的胜场数的期望

    这人能 win>=i 场的概率就是和它同一个半区的 2^i 个人都比他弱啊

    所以去枚举这个2^i,E(X)=sum P(X>=i) 直接搞一下就好了

    我每次的概率都在前一次的算,这样避免了多次枚举,之后求下差就好,所以这个算法是2^n的

    #include <bits/stdc++.h>
    using namespace std;
    double p[30];
    int main()
    {
        int n,k;
        scanf("%d%d",&n,&k);
        int tot=1<<n;
        p[0]=1;k--;
        for(int i=1;(1<<i)<=tot-k;i++)
        {
            p[i]=p[i-1];
            for(int j=tot-(1<<(i-1));j>tot-(1<<i);j--)
                p[i]=p[i]*(j-k)/j;
        }
        double ans=0.;
        for(int i=1;i<=n;i++)
            ans+=(p[i]-p[i+1])*i;
        printf("%.5f",ans);
        return 0;
    }
  • 相关阅读:
    第一阶段SCRUM冲刺10
    第一阶段SCRUM冲刺09
    第一阶段SCRUM冲刺08
    单词统计续
    第十一周学习报告
    第一阶段SCRUM冲刺07
    第一阶段SCRUM冲刺06
    第一阶段SCRUM冲刺05
    十天冲刺08
    十天冲刺07
  • 原文地址:https://www.cnblogs.com/BobHuang/p/7605150.html
Copyright © 2011-2022 走看看