BZOJ 1208 set
2024-08-24 21:56:59
思路:
开俩set
模拟一下
就好了
//By SiriusRen
#include <bits/stdc++.h>
using namespace std;
int n,xx,yy;
set<int>s1,s2;set<int>::iterator it;
long long ans;
int main(){
scanf("%d",&n);
for(int i=;i<=n;i++){
scanf("%d%d",&xx,&yy);
if(!xx){
if(s2.empty())s1.insert(yy);
else{
int tmp=;
it=s2.lower_bound(yy);
if(it!=s2.begin())it--,tmp=min(tmp,yy-*it),it++;
if(it!=s2.end())tmp=min(tmp,*it-yy);
if(it!=s2.begin()){
it--;
if(yy-*it==tmp){s2.erase(it);goto ed1;}
it++;
}s2.erase(it);
ed1:ans+=tmp;
}
}
else{
if(s1.empty())s2.insert(yy);
else{
int tmp=;
it=s1.lower_bound(yy);
if(it!=s1.begin())it--,tmp=min(tmp,yy-*it),it++;
if(it!=s1.end())tmp=min(tmp,*it-yy);
if(it!=s1.begin()){
it--;
if(yy-*it==tmp){s1.erase(it);goto ed2;}
it++;
}s1.erase(it);
ed2:ans+=tmp;
}
}
}printf("%lld\n",ans%);
}
最新文章
- LightOJ1031 Easy Game(区间DP)
- latex 模版
- NOI十连测 第五测 T1
- 老李推荐:第2章1节《MonkeyRunner源码剖析》了解你的测试对象: NotePad应用简介
- WebP 的前世今生
- XBMC源代码分析 3:核心部分(core)-综述
- 如何在EXCEL中找出第一列中不包含的第二列数据
- mongoDB,mongoose,没有数组就添加,如果有了数组,就向数组中添加新元素
- html迪士尼网页实现代码
- 前端学习 -- Html&;Css -- 层级和透明度
- 蚂蚁金服缘何自研Service Mesh?
- Server:www121 Server:www120 Server:NWS_SP
- 58.纯 CSS 创作一只卡通鹦鹉
- SDN期末作业-通过SDN的应用实现负载均衡
- 通过vnc访问无显卡服务器的图形环境
- ubuntu中下载sublime相关问题
- centOS 安装Python3与python2并存
- sql2012简体中文版安装
- 七月小说网 Python + GraphQL (三)
- 什么是 RegExp?