题解 | #拦截导弹#

拦截导弹

https://www.nowcoder.com/practice/dad3aa23d74b4aaea0749042bba2358a

#include <iostream>

using namespace std;

const int MAXN = 25 + 10;
int dp[MAXN];
int height[MAXN];

int main(){
	int n;
	cin >> n;
	for (int i = 0; i < n; i++){
		cin >> height[i];
	}
	int answer = 0;
	for (int i = 0; i < n; i++){
		dp[i] = 1;
		for (int j = 0; j < i; j++){
			if (height[i] <= height[j]){
				dp[i] = max(dp[i], dp[j] + 1);
			}
		} 
		answer = max(answer, dp[i]);
	}
	cout << answer << endl;
	return 0;
}

学的王道

全部评论

相关推荐

机械打工仔:有说的你怀疑一下就行了,直接问也太实诚了
点赞 评论 收藏
分享
盖茨伯爵:一样兄弟,我从4月开始发到现在了,都三四百个了
无实习如何秋招上岸
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
今天 13:32
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务