首页 > 代码库 > hdu 5035 概率论

hdu 5035 概率论

n个服务窗口,每个服务窗口等待时间服从指数发布,求等待时间的期望。

解:

  分俩阶段:先是等待到轮到他,再是被服务的时间。

 每个窗口的等待时间期望是1/ki(1/ki,指数期望发布公式),总等待时间期望为1/(求和ki),“一小撮方法”每个窗口平均单位时间处理1/(1/ki)个人,,单位时间可以处理(sum(ki))个人,一个的平均等待期望(1/(sum(KI)).

再求被服务时间的期望:

每个窗口被选择的概率为  ki/(sum(ki))(这个窗口处理一个人的能力*总能力(单位时间的)),每个等待时间期望为1/ki,得出(n/(sum(ki)))。

结果相加即可:

#include<iostream>
#include<cstdio>
using namespace std;
int n;
int main()
{
    int T;int cnt=1;
    scanf("%d",&T);
    while(T--)
    {
      scanf("%d",&n);
      double sums=0;
      double ki;
      for(int i=0;i<n;i++)
      {
          scanf("%lf",&ki);
          sums+=ki;
      }
      int tx;
      for(int i=0;i<n;i++)
      {
          scanf("%d",&tx);
      }
      printf("Case #%d: %.6lf\n",cnt++,(n+1.0)/sums);
    }
    return 0;
}


hdu 5035 概率论