比赛 |
2024暑期C班集训4 |
评测结果 |
AAAAAAATTT |
题目名称 |
梦境 |
最终得分 |
70 |
用户昵称 |
wzh0425 |
运行时间 |
3.009 s |
代码语言 |
C++ |
内存使用 |
4.39 MiB |
提交时间 |
2024-07-04 09:05:08 |
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
struct node{
int st,ed;
}a[200005];
int n,m,b[200005],vis[200005],sum;
bool cmp(node x,node y){
if (x.st==y.st) return x.ed<y.ed;
return x.st<y.st;
}
priority_queue<int,vector<int>,greater<int> > q;
int main(){
freopen("dream.in","r",stdin);
freopen("dream.out","w",stdout);
scanf("%d%d",&n,&m);
for (int i=1;i<=n;i++){
scanf("%d%d",&a[i].st,&a[i].ed);
}
for (int i=1;i<=m;i++){
scanf("%d",&b[i]);
}
sort(a+1,a+1+n,cmp);
sort(b+1,b+1+m);
for (int i=1;i<=m;i++){
int mins=INT_MAX,tmp=0;
for (int j=1;j<=n;j++){
if (!vis[j]&&a[j].st<=b[i]&&a[j].ed>=b[i]){
if (a[j].ed<mins){
mins=a[j].ed;
tmp=j;
}
}
}
if (mins!=INT_MAX){
vis[tmp]=1;
sum++;
}
}
printf("%d",sum);
return 0;
}