首页 > 其他 > 详细

烦人的dp

时间:2015-03-06 12:42:10      阅读:160      评论:0      收藏:0      [点我收藏+]

1050

技术分享
 1 #include<cstring>
 2 #include<iostream>
 3 #include<cstdio>
 4 
 5 using namespace std;
 6 
 7 int main()
 8 {
 9     int n;
10     while(cin>>n)
11     {
12         int a[200][200];
13         memset(a,0,sizeof(a));
14         for(int i=1;i<=n;i++)
15             for(int j=1;j<=n;j++)
16             {
17                 cin>>a[i][j];
18                 a[i][j]+=a[i-1][j];
19             }
20         int maxn=-0x3f3f3f3f;
21         int b[200],dp[20000];
22         memset(dp,0,sizeof(dp));
23         for(int i=1;i<=n;i++)
24         {
25             for(int j=i;j<=n;j++)
26             {
27                 for(int k=1;k<=n;k++)
28                 {
29                     b[k]=a[j][k]-a[i-1][k];
30                 }
31                 int sum=0;
32                 for(int k=1;k<=n;k++)
33                 {
34                     if(sum+b[k]<0){
35                         sum=b[k];
36                     }
37                     else {
38                         sum+=b[k];
39                         if(sum>maxn) maxn=sum;
40                     }
41                 }
42             }
43         }
44         cout<<maxn<<endl;
45     }
46 }
47 //最大连续子序列
View Code

 

烦人的dp

原文:http://www.cnblogs.com/wsaaaaa/p/4317858.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!