贪心思路是否有问题
查看原帖
贪心思路是否有问题
825876
Peaceful_Evening楼主2025/1/26 22:23

rt.我把防晒霜和牛升序排序,只能得38分。但是将它们降序排序,就全A了,有谁告诉我为什么吗?

附上本人代码:

#include <bits/stdc++.h>
using namespace std;
struct s1{
	int spfi,spfm;	
}cow[100005];
struct s2{
	int sp,num;
}spf[100005];
bool cmp(s1 a,s1 b){
	return a.spfi>b.spfi;//就这两个地方
}
bool cmps(s2 a,s2 b){
	return a.sp>b.sp;//
}
int main(){
	int c,l;
	cin>>c>>l;
	for(int i=1;i<=c;i++){
		cin>>cow[i].spfi>>cow[i].spfm;
	}
	for(int i=1;i<=l;i++){
		cin>>spf[i].sp>>spf[i].num;
	}
	int ans=0;
	stable_sort(cow+1,cow+c+1,cmp);
	stable_sort(spf+1,spf+l+1,cmps);
	for(int i=1;i<=c;i++){
		for(int j=1;j<=l;j++){
			if(cow[i].spfi<=spf[j].sp&&cow[i].spfm>=spf[j].sp&&spf[j].num){
				ans++;
				spf[j].num--;
				break;
			}
		}
	}
	cout<<ans;
}
2025/1/26 22:23
加载中...