很简单
对电脑按照内存或者速度进行从大到小排序,这样保证了有一个属性是从大到小的,然后我们只需要维护另一个属性的最大值。
从大到小遍历,看当前电脑的第二个属性是不是存在电脑比他第二个属性大(从大到小 保证第一个属性降序)
#include<bits/stdc++.h>
using namespace std;
pair<int,int> q[1<<17];
int main(){
int n;cin>>n;
for(int i=1;i<=n;i++){
int x,y;cin>>x>>y;
q[i]={x,y};
}
sort(q+1,q+1+n);
int num=0,ma=q[n].second;
for(int i=n-1;i;i--){
if(q[i].second<=ma){
num++;
}
else ma=q[i].second;
}
cout<<num;
return 0;
}
京公网安备 11010502036488号