比赛 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;
}