Codeforces Round #165 (Div. 1) B. Greenhouse Effect(DP+最长上升子序列+思维)

题目链接
在这里插入图片描述
在这里插入图片描述
思路:转换一下思维,我们考虑一下哪些数可以不用动,那么这个题就变成了求最长上升子序列的裸体了,答案就是n-LIS。

#include<bits/stdc++.h>
using namespace std;
const int maxn=5e3+5;
pair<int,double>a[maxn]; 
int n,m,dp[maxn],ans=0;
int main()
{
	scanf("%d %d",&n,&m);
	for(int i=1;i<=n;++i) scanf("%d %lf",&a[i].first,&a[i].second);
	for(int i=1;i<=n;++i)
	{
		dp[i]=1;
		for(int j=1;j<i;++j)
		if(a[i].first>=a[j].first&&dp[j]+1>dp[i]) dp[i]=dp[j]+1;
		ans=max(ans,dp[i]);
	}
	printf("%d\n",n-ans);
}
发布了328 篇原创文章 · 获赞 1 · 访问量 9081

猜你喜欢

转载自blog.csdn.net/qq_42479630/article/details/105279937