zoukankan      html  css  js  c++  java
  • tyvj1864 [Poetize I]守卫者的挑战

    期望dp
    不考虑打的顺序,只要最后能把地图都装下就行了,因此把概率和容量装进一个结构体里面,把地图放后面。
    记一个状态f[i][j][k]表示前i个比赛,赢了j场,容量k的期望,转移即可。

    #include <iostream>
    #include <cstdio>
    #include <algorithm>
    using namespace std;
    const int N=205;
    struct RACE{int a;double p;}a[N];
    int n,l,K;
    double f[205][205][205];
    bool cmp(RACE x,RACE y) {return x.a>y.a;}
    int main() {
      scanf("%d%d%d",&n,&l,&K);
      for(int i=1;i<=n;i++) scanf("%lf",&a[i].p),a[i].p/=100;
      for(int i=1;i<=n;i++) scanf("%d",&a[i].a);
      f[0][0][min(200,K)]=1;
      sort(a+1,a+1+n,cmp);
      for(int i=0;i<n;i++) {
        for(int j=0;j<=i;j++) {
          for(int r=0;r<=n;r++) {
            f[i+1][j][r]+=f[i][j][r]*(1-a[i+1].p);
            if(r+a[i+1].a<0) continue;
            int t=min(r+a[i+1].a,n);
            f[i+1][j+1][t]+=f[i][j][r]*a[i+1].p;
          }
        }
      }
      double ans=0;
      for(int i=0;i<=n;i++) {
        for(int j=l;j<=n;j++)
        ans+=f[n][j][i];
      }
      printf("%.6lf",ans);
    }
    
    我是咸鱼。转载博客请征得博主同意Orz
  • 相关阅读:
    三.Python数据类型详述
    二.Python基础语法和数据类型
    一.Python特点
    Hive之explode和lateral view
    javascript之函数作用域
    javascript之函数使用
    javascript之函数定义
    javascript之变量
    Html之元素
    Html之页面
  • 原文地址:https://www.cnblogs.com/sdfzhsz/p/9348646.html
Copyright © 2011-2022 走看看