第三届中国计量大学ACM程序设计竞赛个人赛 Birthday Gift

https://ac.nowcoder.com/acm/contest/5795/B

 提取一个公式既可

具体看代码

#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
const int maxn = 2e5+111;
pair<ll,ll>ins[maxn];
int a[maxn];
int b[maxn];
struct Node{
	ll a,b,len;
	int id;
}que[maxn];
bool bml(Node a,Node b){
	return a.len > b.len;
}
int main(){
	int n;
	cin>>n;
	for(int i=0;i<n;i++){
		scanf("%lld",&que[i].a);
	}
	for(int i=0;i<n;i++){
		scanf("%lld",&que[i].b);
		que[i].id = i;
		que[i].len = que[i].a - que[i].b;
	}  
	sort(que,que+n,bml);
	
	ll ans = que[0].b;
	ll cns = 0;
	
	for(int i=1;i <	n;i++){
		cns = max(cns,que[i].len + ans + que[i].b);
		ans = max(que[i].b,ans);	
	}
	printf("%lld
",cns);
	return 0;
}

  

寻找真正的热爱
原文地址:https://www.cnblogs.com/lesning/p/13037810.html