[BZOJ4195] [NOI2015] 程序自动分析 - 并查集 + 离散化
来源:互联网 发布:域名注册商和持有者 编辑:程序博客网 时间:2024/04/30 05:42
辣鸡题啊QAQ然而我交了好几次
#include "algorithm" #include "iostream"#include "stdio.h"#define rep(f,a,b) for(f=a;f<=b;f++)using namespace std;const int N=1000005;inline int read(){int v=0; char ch=getchar();while (ch<'0'||ch>'9') ch=getchar();while (ch<='9'&&ch>='0') { v=v*10+ch-'0'; ch=getchar();}return v;}int fa[N],n,a[N],b[N],e[N],c[2*N];int find(int x){if(fa[x]==x) return x;return fa[x]=find(fa[x]);}void work(){ n=read(); int i;rep(i,1,2*n) fa[i]=i;rep(i,1,n) {c[2*i-1]=a[i]=read(); c[2*i]=b[i]=read();e[i]=read(); } int cl=0; i=1;sort(c+1,c+2*n+1);while (i<=2*n){ c[++cl]=c[i++];while (c[i]==c[i-1]&&++i<=2*n);} int bot,top,mid;rep(i,1,n){ bot=1,top=cl;while (mid=(bot+top+1)>>1,bot<top){c[mid]>a[i]?top=mid-1:bot=mid;} mid=(bot+top)>>1; a[i]=mid; bot=1,top=cl;while (mid=(bot+top+1)>>1,bot<top){c[mid]>b[i]?top=mid-1:bot=mid;} mid=(bot+top)>>1; b[i]=mid;} int x,y;rep(i,1,n){x=find(a[i]),y=find(b[i]);if (x!=y && e[i]) fa[x]=y;}rep(i,1,n){x=find(a[i]),y=find(b[i]);if (x==y && !e[i]){ puts("NO"); break;} }if(i>n) puts("YES");}int main(){int T; T=read();while(T--) work();return 0;}
0 0
- [BZOJ4195] [NOI2015] 程序自动分析 - 并查集 + 离散化
- [NOI2015] BZOJ4195 程序自动分析-离散化-并查集
- [bzoj4195][NOI2015]程序自动分析 离散化 并查集
- 【NOI2015】BZOJ4195程序自动分析(并查集+离散化)
- BZOJ4195 [Noi2015]程序自动分析(离散化+并查集)
- [BZOJ4195][NOI2015][并查集][离散化][水题]程序自动分析
- [BZOJ4195][NOI2015]程序自动分析(离散化+并查集)
- 【BZOJ4195】【NOI2015】程序自动分析(并查集)
- 【NOI2015】【程序自动分析】【并查集+离散化】
- [BZOJ4195][Noi2015]程序自动分析(离散化+ufs)
- 并查集+map——BZOJ4195/Luogu1955 [Noi2015]程序自动分析
- [BZOJ4195][Noi2015]程序自动分析
- [BZOJ4195] [Noi2015]程序自动分析
- 【NOI2015】【BZOJ4195】程序自动分析
- 【NOI2015】bzoj4195程序自动分析
- bzoj4195: [Noi2015]程序自动分析
- 【bzoj4195】[Noi2015]程序自动分析
- bzoj4195 [Noi2015]程序自动分析
- CodeForces 670D
- STL map的复制
- CodeForces 670E(模拟双向链表)
- 解决PLSQL developer 乱码问题
- CUDA学习笔记四
- [BZOJ4195] [NOI2015] 程序自动分析 - 并查集 + 离散化
- windows10下phpstudy 80端口被占用问题
- VS2012新建项目是报错“未找到与约束:ContractName....."
- eclipse类、方法添加作者与功能描述注释
- Dr.Elephant Rest API -【Dr.Elephant系列文章-7】
- CUDA学习笔记五
- statusBar动画
- App版本迭代时间安排(思路重要)
- jQuery上传插件uploadify中文文档