求调
查看原帖
求调
686083
hct_楼主2023/5/2 10:18

如何让力气按照苹果高度从小到大的顺序排序

代码:

#include <iostream>
#include <cstring>
#include <iomanip>
#include <cmath>
#include <map>
#include <stack>
#include <algorithm>
#include <string>
#include <queue>
#include <deque>
#include <vector>
using namespace std;
struct tree{
	int x,y;
	bool operator < (const tree &o) const{
		return y<o.y;
	}
};
int A[1145140],B[1145140];
int main() {
	tree tre;
	int n,s,a,b,cnt=0;
	cin>>n>>s>>b>>a;
	for(int i=0;i<n;i++){
		cin>>tre.x>>tre.y;
		A[i]=tre.x,B[i]=tre.y;
		
	}
	sort(A,A+n);
//	cout<<endl<<endl<<endl;
//	for(int i=0;i<n;i++){
//		cout<<A[i]<<" "<<B[i]<<endl;
//	}
//	cout<<endl<<endl<<endl;
	for(int i=0;i<n;i++){
		if(A[i]<=a+b && B[i]<=s){
			s-=B[i];
			cnt++;
//			cout<<i;
		}
			
		}
	cout<<cnt;
	}
	

2023/5/2 10:18
加载中...