54分贪心WA#1,3,8,10,11求助
查看原帖
54分贪心WA#1,3,8,10,11求助
1060680
Silversnowflake楼主2024/7/30 09:48
#include<bits/stdc++.h>
using namespace std;
const int N = 1e4+10;
int n,mb,ans;
struct node{
	int l;
	int w;
	int b;
}cy[N];
bool cmp(node a,node b){
	if(a.l == b.l){
		return a.w>b.w;
	}
	return a.l>b.l;
}
void cl(){
	int j;
	for(int i=0;i<n;i++){
			if(cy[i].b == 0){
				j = i;cy[j].b = 1;
				break;
			}
		}
	for(int i=j+1;i<n;i++){
		if(cy[j].l>cy[i].l && cy[j].w>cy[i].w){
			if(cy[i].b == 0){
				cy[i].b = 1;
				j = i;
				mb--;
			}
		}
	}
	return;
}
int main(){
	cin>>n;mb = n;
	for(int i=0;i<n;i++){
		cin>>cy[i].l>>cy[i].w;
	}
	sort(cy,cy+n,cmp);
	while(mb>0){
		mb--;cl();ans++;
	}
	cout<<ans;
	return 0;
}

2024/7/30 09:48
加载中...