Sol

对偶图+并查集.

思路非常好,将网格图转化成对偶图,在原图中删掉一条边,相当于在对偶图中连上一条边(其实就是网格的格点相互连边),每次加边用并查集维护就可以了.

哦对,还要注意边界就是网格外面看做是一个点就可以了.

PS:好久前的代码.

Code

  1. /**************************************************************
  2. Problem: 4423
  3. User: BeiYu
  4. Language: C++
  5. Result: Accepted
  6. Time:1300 ms
  7. Memory:18500 kb
  8. ****************************************************************/
  9.  
  10. #include<cstdio>
  11. #define N 1505
  12. struct Union_Find{
  13. int f[N*N];
  14. Union_Find(){for(int i=0;i<N*N;i++) f[i]=i;}
  15. int Find(int x){return f[x]==x?x:f[x]=Find(f[x]);}
  16. void Union(int u,int v){int f1=Find(u),f2=Find(v);f[f1]=f2;}
  17. }UF;
  18. int cnt,n,k,idx[N][N];
  19. inline int in(int x=0,char ch=getchar()){while(ch>'9'||ch<'0') ch=getchar();
  20. while(ch>='0'&&ch<='9') x=(x<<3)+(x<<1)+ch-'0',ch=getchar();return x;}
  21. int main(){
  22. n=in(),k=in();
  23. for(int i=1;i<n;i++) for(int j=1;j<n;j++) idx[i][j]=++cnt;
  24. int u,v,ans=1;char opt[5];
  25. while(k--){
  26. if(ans) u=in(),v=in(),scanf("%s%*d%*d%*s",opt);
  27. else scanf("%*d%*d%*s"),u=in(),v=in(),scanf("%s",opt);
  28. if(opt[0]=='N')
  29. if(ans=UF.Find(idx[u][v])!=UF.Find(idx[u-1][v])) UF.Union(idx[u][v],idx[u-1][v]);
  30. if(opt[0]=='E')
  31. if(ans=UF.Find(idx[u][v])!=UF.Find(idx[u][v-1])) UF.Union(idx[u][v],idx[u][v-1]);
  32. puts(ans?"TAK":"NIE");
  33. }return 0;
  34. }

  

BZOJ 4423: [AMPPZ2013]Bytehattan的更多相关文章

  1. BZOJ 4423: [AMPPZ2013]Bytehattan 并查集+平面图转对偶图

    4423: [AMPPZ2013]Bytehattan Time Limit: 3 Sec  Memory Limit: 128 MB Submit: 277  Solved: 183 [Submit ...

  2. bzoj 4423 [AMPPZ2013]Bytehattan(对偶图,并查集)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=4423 [题意] 给定一个平面图,随时删边,并询问删边后两点是否连通.强制在线. [科普 ...

  3. BZOJ 4423: [AMPPZ2013]Bytehattan 平面图转对偶图 + 并查集

    Description 比特哈顿镇有n*n个格点,形成了一个网格图.一开始整张图是完整的.有k次操作,每次会删掉图中的一条边(u,v),你需要回答在删除这条边之后u和v是否仍然连通. Input 第一 ...

  4. 【BZOJ4423】[AMPPZ2013]Bytehattan 对偶图+并查集

    [BZOJ4423][AMPPZ2013]Bytehattan Description 比特哈顿镇有n*n个格点,形成了一个网格图.一开始整张图是完整的.有k次操作,每次会删掉图中的一条边(u,v), ...

  5. BZOJ 4423 【AMPPZ2013】 Bytehattan

    Description 比特哈顿镇有n*n个格点,形成了一个网格图.一开始整张图是完整的. 有k次操作,每次会删掉图中的一条边(u,v),你需要回答在删除这条边之后u和v是否仍然连通. Input 第 ...

  6. 【bzoj4423】 AMPPZ2013—Bytehattan

    http://www.lydsy.com/JudgeOnline/problem.php?id=4423 (题目链接) 题意 给出一个N*N的格点图,m次操作,每次切断U,V之间的边,问切断之后,U, ...

  7. BZOJ4423 [AMPPZ2013]Bytehattan

    本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000作者博客:http://www.cnblogs.com/ljh2000-jump/转 ...

  8. [BZOJ4423][AMPPZ2013]Bytehattan(对偶图+并查集)

    建出对偶图,删除一条边时将两边的格子连边.一条边两端连通当且仅当两边的格子不连通,直接并查集处理即可. #include<cstdio> #include<algorithm> ...

  9. 【bzoj4423】[AMPPZ2013]Bytehattan(平面图转对偶图+并查集)

    题目传送门:bzoj4423 如果是普通的删边判连通性,我们可以很显然的想到把操作离线下来,倒着加边.然而,这题强 制 在 线. 虽然如此,但是题目所给的图是个平面图.那么我们把它转成对偶图试试看? ...

随机推荐

  1. Java排序算法——表插入排序

    //================================================= // File Name : ListInsertSort_demo //----------- ...

  2. Comparable接口

    java.util.Arrays类也可以对Object数组进行排序,但是要使用这种方法排序必须实现Comparable接口,此接口就是用于指定对象排序规则的. 设计一个学生类,成绩由高到低排序,成绩相 ...

  3. Bindless Textures

    http://shikihuiku.wordpress.com/2014/02/10/openglのtextureについて/

  4. swiper 技巧

    全屏广告高度 ,加上属性. html, body { position: relative; height: 100%; } 停止自行播放 mySwiper.stopAutoplay(); 锁住状态, ...

  5. linux sort,uniq,cut,wc,tr命令详解

    sort是在Linux里非常常用的一个命令,对指定文件进行排序.去除重复的行 sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sor ...

  6. Mac终端Terminal调用Sublime Text

    Sublime Text 本身提供了命令行工具, 只需要在 Terminal 中输入以下内容就行了 sudo ln -s /Applications/Sublime\ Text.app/Content ...

  7. Apache日志配置详解(rotatelogs LogFormat)

    logs/error_logCustomLog logs/access_log common--默认为以上部分 修改为如下: ErrorLog "|/usr/sbin/rotatelogs ...

  8. Java并发编程核心方法与框架-CyclicBarrier的使用

    CyclicBarrier类似于CountDownLatch也是个计数器,不同的是CyclicBarrier数的是调用了CyclicBarrier.await()进入等待的线程数,当线程数达到了Cyc ...

  9. [Angularjs]常见api函数

    写在前面 在angularjs中提供了一些常用的函数,比如angular.lowercase(),angular.uppercase(),angular.isString(),angular.isNu ...

  10. 【转】使用Eclipse构建Maven项目 (step-by-step)

    安装eclipse 及配置maven时,参考的资料!!! from:http://blog.csdn.net/qjyong/article/details/9098213 Maven这个个项目管理和构 ...