首页 > 代码库 > 最大上升子序列和
最大上升子序列和
1 //最大上升子序列和 2 #include<iostream> 3 #include<cstdio> 4 #include<cstdlib> 5 using namespace std; 6 const int maxx=1001; 7 int a[maxx],g[maxx]; 8 int main() 9 { 10 int n; 11 scanf("%d",&n); 12 for(int i=1;i<=n;i++) 13 scanf("%d",&a[i]); 14 int maxl=0; 15 for(int i=1;i<=n;i++) 16 { 17 g[i]=a[i]; 18 for(int j=1;j<=i-1;j++) 19 { 20 if(a[j]<a[i]&&g[i]<g[j]+a[i]) 21 g[i]=g[j]+a[i]; 22 } 23 if(g[i]>maxl) 24 maxl=g[i]; 25 } 26 printf("%d",maxl); 27 return 0; 28 }
//求每个点当前状态的最大上升子序列和
最大上升子序列和
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。