【BZOJ】【1018】【SHOI2008】堵塞的交通traffic
线段树
这题的线段树+分类讨论蛮神奇的……我以前学的线段树简直就是渣渣QAQ
看了下ydc题解里的思想>_>用线段树维护连通性!那么就自己写吧……每个节点表示一段区间的连通性(我的叶子节点表示的是一个方块型的四个点之间的连通性,所以我直接n--了)对线段树上每个节点维护6个信息,即四个端点中任意一对点之间的连通性。
维护连通性的时候要进行信息的整合,也就是说间接连通的要全部找到并标记上连通,举个例子:如果左边连通且下边两端点连通,则左上到右下连通。这是一个简单的讨论我就不细说了,自己想一下真的很容易<_<。
但是这时候我遇到了一个蛋疼的问题:对于叶子节点来说,如果我上下左右四条边都连着,那么肯定是完全连通的……但是如果这时候我删一条边(Close)该怎么办?因为连通性并没有任何变化,但是图跟原来不一样了……所以我选择单独开一个a数组存叶子的直接连通情况(也就是存原图)然后用线段树t维护直接间接连通。
好的这个时候这个线段树我们就维护好了,那么查询的时候就方便啦~我们可以查询一下L=[1,c1-1]这个区间的右端点是否连通
(保证了这种情况:aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABUCAIAAADvQ1kKAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA7EAAAOxAGVKw4bAAADJUlEQVR4nO2dP3KjMByFpZ29imc8aVxYvoQ926TbbeEEzgEyW24BJ7DbLdOZSyyNm4wHDkMKxxPMykLoT+A576syRAh++pBB44Qny7JcLpeCwPJt7BMgvlAhPFQIDxXCY6WwSKWUq7wOdMw6X0kp0yJQd3EJXLsWzwEpy7Ixc0iESA7drVWmNFt1aFvqO50cvrVrCTwgvQqrTAmVVZ2Dnek7pKlllanJS/SpXUuUAelTePPisL9qbrWc/ET0q/1DV7dx4AHpuRcWL3uRPK4dP6TNrB8TsX+Z7h3Rp/YilZvjZf5WmTjZ3EsdB8SssD4dhXqYDe3UktmDEker4sbAo/Y6f96r7O/2fefZdre16sdtQPqfSBfzaArni8uPRSo/uDyajbvRo/b6tXTatTUgA/jusE8E1rum2U1rIwz9szDeR119OkbqORSOtbveIdwGxKxwNl+I8tX+XIatg10/bz4Hj9pn299J+fTrMg51ntoNieOADF9UtJ+WhRCtldMhEVfrqNstPZ6hPw+v2rWLiigD4rC0Nza1PgXMpb2xqV810Zb2jf3FUWXKst4BnY5MlNq9jvQ/Fgrf57/nKbaoMiUgBDZN8Nq1+A2I5B9eoMPvC+GhQnioEB4qhIcK4aFCeKgQHiqEhwrhoUJ4qBAeKoSHCuGhQnioEB4qhCewwiKN/Y9cpAtnITxUCA8VwkOF8FAhPFQIDxXCQ4XwUCE8VAgPFcJDhfBQITyB33ix3jVx3jNEbsJZCA8VwkOF8FAhPFQIDxXCQ4XwUCE8VAgPFcJDhfBQITxUCA8VwkOF8FAhPExO6+Eek9OuXxFu8SrbO0pOG1y7lrGT0w5J60g9rwS/t+S0IbVrmVZymuXvDU0mPxH9akdJTvPJ5UJPTjPVjpOcVvx5KtXPH46BL9jJaYbaYZLT6ny1aZ/pYICT08y1YySnFanc7FVW/XMWeAVUclrg2n1xSk4rUrnZJ4fGswbI5DSb2ieenFbnq/Odeqe50d95cppt7dNOTjtn03S4rJ3uPDltUO1MTpsETE4L0enIMDlND5PTOjA57YvD7wvhoUJ43gCCj3eO9OkLOgAAAABJRU5ErkJggg==" alt="" />)
查询一下R=[c2,n]这个区间左端点是否连通,跟上图类似,是在右边连通的
最后再查询一下mid=[c1,c2-1]这个区间的连通情况,如果L的右端点连通,则mid的左端点是连通的,mid的右端点同理(R的左端点)
然后重新维护下mid的连通情况……OK啦~
这题写的好辛苦……分类讨论总是想不清……
最后给个样例图吧~(红色的为查询点)
aaarticlea/png;base64,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" alt="" width="350" height="85" />
/**************************************************************
Problem: 1018
User: Tunix
Language: C++
Result: Accepted
Time:1068 ms
Memory:4208 kb
****************************************************************/ //BZOJ 1018
#include<vector>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<iostream>
#include<algorithm>
#define rep(i,n) for(int i=0;i<n;++i)
#define F(i,j,n) for(int i=j;i<=n;++i)
#define D(i,j,n) for(int i=j;i>=n;--i)
#define pb push_back
using namespace std;
inline int getint(){
int v=,sign=; char ch=getchar();
while(ch<''||ch>''){ if (ch=='-') sign=-; ch=getchar();}
while(ch>=''&&ch<=''){ v=v*+ch-''; ch=getchar();}
return v*sign;
}
const int N=1e5+,INF=~0u>>;
typedef long long LL;
/******************tamplate*********************/
int n;
struct node{
bool z,y,s,x,zs,zx;
node(bool z=,bool y=,bool s=,bool x=,bool zs=,bool zx=):
z(z),y(y),s(s),x(x),zs(zs),zx(zx){}
//z 左端两结点是否连通
//y 右端
//s 上方
//x 下方
//zs 左上->右下
//zx 左下->右上
}a[N],t[N<<],ans;
#define L (o<<1)
#define R (o<<1|1)
#define mid (l+r>>1)
void maintain(node &a){
a.zs|=(a.z&a.x) | (a.s&a.y);
a.zx|=(a.z&a.s) | (a.x&a.y);
a.z|=(a.zs&a.x) | (a.zx&a.s);
a.y|=(a.zs&a.s) | (a.zx&a.x);
a.s|=(a.zs&a.y) | (a.zx&a.z);
a.x|=(a.zs&a.z) | (a.zx&a.y);
}
node Union(node x,node y){
node tmp;
tmp.z =x.z; tmp.y=y.y;
tmp.s =(x.s&y.s) | (x.zs&y.zx) ;
tmp.x =(x.x&y.x) | (x.zx&y.zs) ;
tmp.zs=(x.s&y.zs) | (x.zs&y.x) ;
tmp.zx=(x.x&y.zx) | (x.zx&y.s) ;
return tmp;
}
void update(int o,int l,int r,int pos,int num,bool v){
//将pos位置的num号连通情况改为v
if (l==r){
if (num==) a[l].z=v; if (num==) a[l].y=v;
if (num==) a[l].s=v; if (num==) a[l].x=v;
t[o]=a[l];
}else{
if (pos<=mid) update(L,l,mid,pos,num,v);
else update(R,mid+,r,pos,num,v);
t[o]=Union(t[L],t[R]);
}
maintain(t[o]);
}
int ql,qr;bool sign=;
void query(int o,int l,int r){
if (ql<=l && qr>=r){
if (!sign) {ans=t[o];sign=;}
else ans=Union(ans,t[o]);
}
else{
if (ql<=mid) query(L,l,mid);
if (qr>mid) query(R,mid+,r);
}
}
int main(){
#ifndef ONLINE_JUDGE
freopen("1018.in","r",stdin);
freopen("1018.out","w",stdout);
#endif
n=getint()-;
int r1,r2,c1,c2;
char cmd[];
while(scanf("%s",cmd)!=EOF && cmd[]!='E'){
r1=getint(); c1=getint(); r2=getint(); c2=getint();
if (c1>c2){swap(c1,c2); swap(r1,r2);}
if (cmd[]=='A'){
ans=node();
if (c1==c2){
if (c1<n+ && c1>){//不是右端点
node t1,t2;
ql=; qr=c1-; sign=;
query(,,n); t1=ans;
ql=c1; qr=n; sign=;
query(,,n);
ans.z|=t1.y; ans.z|=t2.z;
puts(ans.z?"Y":"N");
}else if(c1==n+){
ans=t[];
puts(ans.y?"Y":"N");
}else{
ans=t[];
puts(ans.z?"Y":"N");
}
}else{
node t1,t2;
if (c1!=){ql=; qr=c1-; sign=; query(,,n); t1=ans;}
if (c2!=n+){ql=c2; qr=n; sign=; query(,,n); t2=ans;}
ql=c1; qr=c2-; sign=;
query(,,n);
ans.z|=t1.y | (t1.s & t1.z & t1.x);
ans.y|=t2.z | (t2.s & t2.y & t2.x);
maintain(ans);
if (r1== && r2==) puts(ans.s ?"Y":"N");
if (r1== && r2==) puts(ans.x ?"Y":"N");
if (r1== && r2==) puts(ans.zs?"Y":"N");
if (r1== && r2==) puts(ans.zx?"Y":"N");
}
}else{
bool type=;
if (cmd[]=='O') type=;
else type=;
if (r1==r2){
if (r1==) update(,,n,c1,,type);
else update(,,n,c1,,type);
}else{
if (c1<n+) update(,,n,c1,,type);
if (c1> ) update(,,n,c1-,,type);
}
}
}
return ;
}
1018: [SHOI2008]堵塞的交通traffic
Time Limit: 3 Sec Memory Limit: 162 MB
Submit: 2030 Solved: 638
[Submit][Status][Discuss]
Description
有
一天,由于某种穿越现象作用,你来到了传说中的小人国。小人国的布局非常奇特,整个国家的交通系统可以被看成是一个2行C列的矩形网格,网格上的每个点代
表一个城市,相邻的城市之间有一条道路,所以总共有2C个城市和3C-2条道路。
小人国的交通状况非常槽糕。有的时候由于交通堵塞,两座城市之间的道路会变得不连通,直到拥堵解决,道路才会恢复畅通。初来咋到的你决心毛遂自荐到交通部
某份差事,部长听说你来自一个科技高度发达的世界,喜出望外地要求你编写一个查询应答系统,以挽救已经病入膏肓的小人国交通系统。
小人国的交通部将提供一些交通信息给你,你的任务是根据当前的交通情况回答查询的问题。交通信息可以分为以下几种格式: Close r1 c1 r2
c2:相邻的两座城市(r1,c1)和(r2,c2)之间的道路被堵塞了; Open r1 c1 r2
c2:相邻的两座城市(r1,c1)和(r2,c2)之间的道路被疏通了; Ask r1 c1 r2
c2:询问城市(r1,c1)和(r2,c2)是否连通。如果存在一条路径使得这两条城市连通,则返回Y,否则返回N;
Input
第
一行只有一个整数C,表示网格的列数。接下来若干行,每行为一条交通信息,以单独的一行“Exit”作为结束。我们假设在一开始所有的道路都是堵塞的。
对30%测试数据,我们保证C小于等于1000,信息条数小于等于1000; 对100%测试数据,我们保证
C小于等于100000,信息条数小于等于100000。
Output
对于每个查询,输出一个“Y”或“N”。
Sample Input
Open 1 1 1 2
Open 1 2 2 2
Ask 1 1 2 2
Ask 2 1 2 2
Exit
Sample Output
N
HINT
Source
【BZOJ】【1018】【SHOI2008】堵塞的交通traffic的更多相关文章
- 数据结构(线段树):BZOJ 1018: [SHOI2008]堵塞的交通traffic
1018: [SHOI2008]堵塞的交通traffic Time Limit: 3 Sec Memory Limit: 162 MBSubmit: 2638 Solved: 864 Descri ...
- BZOJ 1018 [SHOI2008]堵塞的交通traffic
1018: [SHOI2008]堵塞的交通traffic Time Limit: 3 Sec Memory Limit: 162 MBSubmit: 2247 Solved: 706[Submit ...
- BZOJ 1018: [SHOI2008]堵塞的交通traffic [线段树 区间信息]
1018: [SHOI2008]堵塞的交通traffic Time Limit: 3 Sec Memory Limit: 162 MBSubmit: 3064 Solved: 1027[Submi ...
- [BZOJ 1018] [SHOI2008] 堵塞的交通traffic 【线段树维护联通性】
题目链接:BZOJ - 1018 题目分析 这道题就说明了刷题少,比赛就容易跪..SDOI Round1 Day2 T3 就是与这道题类似的..然而我并没有做过这道题.. 这道题是线段树维护联通性的经 ...
- BZOJ 1018: [SHOI2008]堵塞的交通traffic(线段树)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1018 用线段树维护区间连通性,对于每一个区间记录6个域表示(左上,左下)(左上,右上)(右上, ...
- BZOJ 1018: [SHOI2008]堵塞的交通traffic(线段树分治+并查集)
传送门 解题思路 可以离线,然后确定每个边的出现时间,算这个排序即可.然后就可以线段树分治了,连通性用并查集维护,因为要撤销,所以要按秩合并,时间复杂度\(O(nlog^2 n)\) 代码 #incl ...
- 1018: [SHOI2008]堵塞的交通traffic
1018: [SHOI2008]堵塞的交通traffic 链接 分析: 用线段树维护区间的四个端点的联通情况,然后查询的时候,把所有覆盖到的区间合并起来即可. 六种情况左上到右上(左边到右边的情况)… ...
- 1018: [SHOI2008]堵塞的交通traffic - BZOJ
Description 有一天,由于某种穿越现象作用,你来到了传说中的小人国.小人国的布局非常奇特,整个国家的交通系统可以被看成是一个2行C列的矩形网格,网格上的每个点代表一个城市,相邻的城市之间有一 ...
- 【BZOJ】1018: [SHOI2008]堵塞的交通traffic
http://www.lydsy.com/JudgeOnline/problem.php?id=1018 题意:有2行,每行有c(c<=100000)个城市,则一共有c-1个格子,现在有q(q& ...
- BZOJ.1018.[SHOI2008]堵塞的交通(线段树维护连通性)
题目链接 只有两行,可能的路径数不多,考虑用线段树维护各种路径的连通性. 每个节点记录luru(left_up->right_up),lurd,ldru,ldrd,luld,rurd,表示这个区 ...
随机推荐
- 最近的学习的linux命令笔记
vmstat 2 2 mail -s nihao root < test.txt f 323 h 300-310 crontab -l,-e,-r vim /etc/cron ...
- php反射应用实例代码
php反射应用示例. 代码如下:<?php function custom(){ } class custom{ public function index(){ } } prin ...
- HTTP协议中PUT/GET/POST/HEAD等介绍
HTTP协议中GET.POST和HEAD的介绍 GET: 请求指定的页面信息,并返回实体主体. HEAD: 只请求页面的首部. POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体 ...
- Ubuntu14.04 切换root账户su root失败解决办法
原因是需要备份一个vimrc,可是cp就提示Permission denied. su root就提示su: Authentication failure 解决办法: sudo passwd root ...
- 搭通自己的电脑与GitHub的传输通道
一.远程仓库怎么玩 1. 自己搭建一个运行Git的服务器 Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上,但肯定有一台机器有着最原始的版本库,然后别的机器来克隆这个原始版本库,这 ...
- Python学习教程(learning Python)--3 Python分支结构和布尔逻辑
本章节主要探讨研究Python下的分支选择结构程序设计问题. if语句用来检验一个条件, 如果 条件为真,我们运行一块语句(称为 if-块 ), 否则 我们处理另外一块语句(称为 else-块 ) ...
- ubuntun pptpd
apt-get install pptpd 3.编辑pptpd.conf文件 vi /etc/pptpd.conf 取消注释下面内容 option /etc/ppp/pptpd-options loc ...
- [.NET] 打造防“狼”神器 :任务栏篇
@微微一笑:本文标题纯属自娱自乐. 隐藏任务栏效果图: 对比 说起来惭愧,上面这个隐藏任务栏功能,只是完成了我一半的预想.本想是可以选择性的隐藏任务栏上的某个TaskBarButton,但是Win7+ ...
- WPF socket通讯 UDP接收消息
客户端: private Socket socket; private IPEndPoint ipEndPoint; private void sendMessageHandler() { //服务端 ...
- jquery easyui datebox单击文本框显示日期选择
jquery easyui的datebox日历控件,实现单击文本框出现日历选择,如下图: 代码: 修改jquery.easyui.min.js第9797行函数(jQuery EasyUI 1.3.2) ...