站外题求助 6A 4T
  • 板块题目总版
  • 楼主Wildchesse
  • 当前回复9
  • 已保存回复9
  • 发布时间2022/11/19 11:17
  • 上次更新2023/10/27 02:25:33
查看原帖
站外题求助 6A 4T
362022
Wildchesse楼主2022/11/19 11:17

https://iai.sh.cn/problem/705

#include<bits/stdc++.h>
#define int long long
using namespace std;
struct stu{
	int rq,nl;
};
stu l[100005];
bool cmp(stu a,stu b){
	return a.nl<b.nl;
}
stu lq[1000005];
int sum1=0,sum2=0,maxn=-1;
signed main(){
	int n,m;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>l[i].nl>>l[i].rq;
	}
	cin>>m;
	sort(l+1,l+n+1,cmp);
	for(int i=1;i<=n;i++){
		sum1+=l[i].rq;
		lq[i].rq=sum1;
		sum2+=l[i].nl
		lq[i].nl=sum2;
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=i;j++){
			if(lq[i].rq-lq[j-1].rq>maxn and l[i].nl-l[j].nl<=m){
				maxn=lq[i].rq-lq[j-1].rq;
			}
		}
	}
	cout<<maxn;
}

老师要求不能用二分

2022/11/19 11:17
加载中...