比赛 平凡的题目 评测结果 WAWWWWWWWA
题目名称 平凡的题面 最终得分 20
用户昵称 Binary10 运行时间 0.280 s
代码语言 C++ 内存使用 2.32 MiB
提交时间 2015-11-03 10:30:29
显示代码纯文本
#include<cstdio>
#include<algorithm>
using namespace std;
const int maxn = 1e5 + 10;
struct Event{
	int x, type;
	bool operator < (const Event& rhs) const{
    if(x == rhs.x) return type < rhs.type;
    return x < rhs.x;
  }
}a[maxn * 3];
int n, m;
int main()
{
	freopen("bg.in", "r", stdin);
	freopen("bg.out", "w", stdout);
	scanf("%d%d", &n, &m);
	int l, r, e = n;
	for(int i = 0; i < n; i++){
	  scanf("%d", &l);
	  a[i] = (Event){l, 0};
  }
  for(int i = 0; i < m; i++){
    scanf("%d%d", &l, &r);
    a[e++] = (Event){l, -1};
    a[e++] = (Event){r, 1};
  }
  sort(a, a + e);
  int cnt = 0, ans = 0; l = 0;
  for(int i = 0; i < e; i++){
    if(a[i].type < 0) cnt = ++l;
    else if(a[i].type > 0) cnt = --l;
    else if(cnt > 0) {ans++; cnt--;} 
  }
  printf("%d\n", ans);
	return 0;
}