码迷,mamicode.com
首页 > 其他好文 > 详细

hdu--4800--dp

时间:2014-12-02 01:32:58      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   ar   color   os   sp   for   

一共就2种状态的转移

当我们将状态从x转移到Y的时候 可以选择 换队员 或者不换队员 但是有一点要注意 如果要换队员只能是最新的 也就是刚结束的比赛

而且 不管换不换 比赛场次总是增加了一场 我们总是从(x-1)---->x  这也是符合逻辑的 一定要先进行第(x-1)场的比赛 才能进行第x场的比赛

dp[x,y]表示当前进行到第x场比赛的时候 我是以y为编号在进行<注意 因为这边要求比赛一定要按照顺序打完 所以也就是说打完第n场 就是所有的比赛都打完了>

dp[x][y] = max( dp[x][y] , dp[x-1][y]*p[y][ team[x] ); //不更换

dp[x][y] = max( dp[x][ team[x] ] , dp[x-1][y]*p[y][ team[x] ] );//更换

bubuko.com,布布扣
 1 #include <iostream>
 2 #include <algorithm>
 3 using namespace std;
 4 
 5 int n , m;
 6 const int size = 300;
 7 double dp[10010][size];
 8 double p[size][size];
 9 int team[10010];
10 
11 void solve( )
12 {
13     for( int i = 0 ; i<=m ; i++ )
14         dp[0][i] = 1.0;
15     for( int i = 1 ; i<=n ; i++ )
16     {
17         for( int j = 0 ; j<m ; j++ )
18         {
19             dp[i][j] = max( dp[i][j] , dp[i-1][j]*p[j][ team[i] ]);
20             dp[i][ team[i] ] = max( dp[i][ team[i] ] , dp[i-1][j]*p[j][ team[i] ] );
21         }
22     }
23 }
24 
25 int main()
26 {
27     double ans;
28     while( ~scanf("%d",&m) )
29     {
30         m = m * (m-1) * (m-2) / 6;
31         for( int i = 0 ; i<m ; i++ )
32         {
33             for( int j = 0 ; j<m ; j++ )
34             {
35                 scanf("%lf",&p[i][j]);
36             }
37         }
38         scanf("%d",&n);
39         for( int i = 1 ; i<=n ; i++ )
40         {
41             scanf("%d",&team[i]);
42         }
43         memset( dp , 0 , sizeof(dp) );
44         solve( );
45         ans = 0;
46         for( int i = 0 ; i<m ; i++ )
47         {
48             ans = max( ans , dp[n][i] );
49         }
50         printf("%.6lf\n",ans);
51     }
52     return 0;
53 }
View Code

 

today:

  糟糕透了

  ffffffffk

  

hdu--4800--dp

标签:style   blog   http   io   ar   color   os   sp   for   

原文地址:http://www.cnblogs.com/radical/p/4136380.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!