全WA求助(QwQ)
查看原帖
全WA求助(QwQ)
658786
STUDENT00楼主2022/10/23 13:59

我QwQ了,啊,真不愧是“稻花香里说丰年,听取WA声一片”。

#include<bits/stdc++.h>
using namespace std;
int n,dp[3010][2],ans;
struct Line{
	int l,r;
} line[3010];
bool cmp(Line a,Line b){
	return a.r<b.r;
}
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++) scanf("%d%d",&line[i].l,&line[i].r);
	sort(line+1,line+n+1,cmp);
	memset(dp,127,sizeof(dp));
	dp[1][0]=dp[1][1]=line[1].r-line[1].l;
	for(int i=2;i<=n;i++){
		int s=line[i].r-line[i].l;
		for(int j=1;j<i;j++){
			if(line[i].l<=line[j].r&&line[j].l<=line[i].r){
				dp[i][0]=min(dp[i][0],dp[j][1]+s);
				dp[i][1]=min(dp[i][1],dp[j][0]);
			}else dp[i][0]=min(dp[i][0],min(dp[j][0],dp[j][1])+s);
		}
	}
	for(int i=1;i<=n;i++) ans=max(ans,min(dp[i][0],dp[i][1]));
	printf("%d",ans);
	return 0;
}
2022/10/23 13:59
加载中...