关注
#define ll long long
const int N = 1e5 + 2;
int Q,n,m,k,q[N],e[N];
struct P {
int t,r;
} p[N];
bool vis[N],fir[N];
set<int>st;
int main() {
scanf("%d %d %d",&n,&m,&k);
for(int i = 1; i <= k; ++ i) {
scanf("%d",q + i);
st.insert(q[i]);
}
st.insert(-1);
for(int i = 1; i <= m; ++ i) scanf("%d %d",&p[i].t,&p[i].r);
int id = k,nid = 0;
bool f = true;
for(int i = 1; i <= m; ++ i) {
if(!vis[p[i].r]) {
vis[p[i].r] = true;
fir[i] = true;
} else {
auto d = st.upper_bound(p[i].t);
-- d;
if((*d) == -1) {
f = false;
} else {
st.erase((*d));
}
}
}
if(f) {
for(auto x : st) {
if(x != -1) {
e[++ nid] = x;
}
}
for(int i = m; i >= 1; -- i) {
if(fir[i]) {
while(nid >= 1 && e[nid] >= p[i].t) -- nid;
if(nid >= 1) {
vis[p[i].r] = false;
-- nid;
}
}
}
int ans = n;
for(int i = 1; i <= n; ++ i) ans = ans - vis[i];
printf("%d\n",ans);
} else puts("-1");
return 0;
}
查看原帖
点赞 1
相关推荐
04-25 08:54
沈阳建筑大学 建筑类 点赞 评论 收藏
转发
牛客热帖
正在热议
# 牛客帮帮团来啦!有问必答 #
352910次浏览 7295人参与
# 你更愿意参加线上面试还是线下面试? #
4752次浏览 73人参与
# 晒一晒我的offer #
2767775次浏览 49502人参与
# 如何确定求职岗位 #
101007次浏览 2395人参与
# 华为求职进展汇总 #
433725次浏览 4353人参与
# 机械人怎么评价今年的华为 #
49396次浏览 405人参与
# 非技术岗薪资爆料 #
5069次浏览 117人参与
# 第一次面试 #
13875次浏览 212人参与
# 如果再来一次,你还会学硬件吗 #
16804次浏览 332人参与
# 海信求职进展汇总 #
6800次浏览 91人参与
# 通信硬件薪资爆料 #
137434次浏览 979人参与
# 来聊聊机械薪资天花板是哪家 #
18347次浏览 140人参与
# 找工作,你会甘心进小厂还是猛冲大厂 #
22093次浏览 212人参与
# 除了offer,现在你还缺点啥? #
2059次浏览 45人参与
# 应届生应该先就业还是先择业 #
10746次浏览 103人参与
# 通信硬件人笔面经互助 #
63716次浏览 1417人参与
# 百度工作体验 #
18999次浏览 205人参与
# 讲讲我经历过的年终奖 #
5816次浏览 76人参与
# 租房前辈的忠告 #
19800次浏览 1579人参与
# 软件开发薪资爆料 #
536359次浏览 9215人参与