2476题解
程序如下:
#include<bits/stdc++.h>
using namespace std;
struct zom{
int l;
int w;
};
int n;
bool cmp(zom x,zom y){
if(x.l==y.l){
return x.w<y.w;
}
return x.l<y.l;
}
int main(){
cin >> n;
zom a[n+5];
for(int i=1;i<=n;i++){
cin >> a[i].l >> a[i].w;
}
sort(a+1,a+n+1,cmp);
int ans=0,lt=0,wt=0,i=1,k=0;
int b[n+1];
memset(b,0,sizeof(b));
while(k<n){
ans++;
lt=0,wt=0;
while(i<=n){
if(b[i]==0&&a[i].l>=lt&&a[i].w>=wt){
lt=a[i].l;
wt=a[i].w;
b[i]=1;
k++;
if(k==n){
break;
}
}
i++;
}
i=1;
}
cout << ans;
return 0;
}