文章

35

粉丝

134

获赞

55

访问

25.3k

头像
最大上升子序列和 题解:动态规划问题
P1257 北京大学机试题
发布于2024年1月21日 19:20
阅读数 674

#include <bits/stdc++.h>
using namespace std;
int a[1001];
int dp[1001];
int main(){
	int n;
	while(cin>>n){
		for(int i=0;i<n;i++){
			cin>>a[i];
		}
		int res = 0;
		for(int i=0;i<n;i++){
			dp[i] = a[i];
			for(int j=0;j<i;j++){
				if(a[j]<a[i]){
					dp[i] = max(dp[i],dp[j]+a[i]);
				}
			}
			res = max(res,dp[i]); 	
		}
		cout<<res<<endl;
	}
	return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发