zoj_3735,dp,长沙站j题
2014-08-10 07:37
218 查看
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; double a[10010][150]; double dp[10010][150]; int b[10010]; int n; void solve(int cnt) { memset(dp,0,sizeof(dp)); for(int i=0;i<cnt;i++) dp[0][i]=1; for(int i=1;i<=n;i++) for(int j=0;j<cnt;j++) { dp[i][j]=max(dp[i][j],dp[i-1][j]*a[j][b[i]]); dp[i][b[i]]=max(dp[i][b[i]],dp[i-1][j]*a[j][b[i]]); } double cur=0; for(int i=0;i<cnt;i++) if(dp [i]>cur) cur=dp [i]; printf("%.6f\n",cur); //for(int i=0;i<=n;i++) //{ // for(int j=0;j<cnt;j++) // cout<<dp[i][j]<<" "; // cout<<endl; //} } int main() { int m; while(cin>>m) { int cnt=1,cur=1; for(int i=4;i<=m;i++) cnt*=i; for(int i=1;i<=m-3;i++) cur*=i; cnt=cnt/cur; //cout<<cnt<<endl; for(int i=0;i<cnt;i++) for(int j=0;j<cnt;j++) cin>>a[i][j]; //int n; cin>>n; for(int i=1;i<=n;i++) cin>>b[i]; solve(cnt); } return 0; }
相关文章推荐
- zoj_3735,dp,长沙站j题
- zoj_3735,dp,长沙站j题
- ZOJ - 3735 Cake(凸包,区间dp,最优三角剖分)
- ZOJ 3735 Josephina and RPG 概率dp水题。
- zoj 3735 Josephina and RPG (2013 亚洲区域赛 长沙站 J)
- ZOJ 3735 Cake(区间DP,最优三角剖分)
- ZOJ 3735 Josephina and RPG (概率DP)
- ZOJ 3735 dp
- ZOJ 3735 Josephina and RPG (dp)
- ZOJ 3735——Josephina and RPG(dp)
- ZOJ 3735 Josephina and RPG DP
- zoj 3735 概率dp
- zoj 3735 概率dp
- zoj 3735 概率dp
- zoj-3735 Josephina and RPG[概率dp]
- zoj 3471 Most Powerful(状态压缩dp)
- ZOJ 3892 Available Computation Sequence 区间dp
- Cake - ZOJ 3537 凸包+dp三角划分
- zoj 3469 Food Delivery 区间dp + 提前计算费用
- Zoj 3541 The Last Puzzle(区间dp)