Description

定义一个图的变换:对于一个有向图\(G=(V, E)\),建立一个新的有向图:

\(V'=\{v_e|e \in E\}\),\(E'=\{(v_b, v_e)|b=(u,v), e=(v,w)\}\),\(G'=(V', E')\)。

也就是说每个边变成一个点,如果边b的终点和边e的起点相同则b到e连一条边。

现在给定\(G'\),问是否存在\(G\)。\(G'\)的点数不超过\(300\)。

Solution

如果\(G'\)中有\((u,w), (v,w)\)两条边,那么说明\(G\)中\(u,v\)的终点相同;那么\(G'\)中\(u,v\)连到的点应该是一样的。

也就是说,如果我在\(G'\)中令\(S_i\)表示\(i\)连到的点集,那么\(S_i=S_j\)和\(S_i\cap S_j\)必有一成立。

反之,如果上述条件成立,我可以把所有点按照\(S\)划分,即可得到\(G\)中每个点的出边集合;然后容易找出\(G\)中每个点的入边集合,易证这个\(G\)是合法的。

于是bitset求出\(S\)之后枚举\(i,j\)判断即可。

Code

#include <bitset>
#include <cstdio>
const int N = 305;
std::bitset<N> out[N], zero;
int main() {
int T;
scanf("%d", &T);
while (T--) {
int n, m;
scanf("%d%d", &n, &m);
zero.reset();
for (int i = 0; i < n; ++i) out[i].reset();
for (int x, y; m; --m) {
scanf("%d%d", &x, &y);
out[x].set(y);
}
bool ok = true;
for (int i = 0; i < n; ++i)
for (int j = 0; j < n; ++j)
ok = ok && ((out[i] & out[j]) == zero || out[i] == out[j]);
puts(ok ? "Yes" : "No");
}
return 0;
}

BZOJ3108 [cqoi2013]图的逆变换的更多相关文章

  1. BZOJ 3108: [cqoi2013]图的逆变换

    3108: [cqoi2013]图的逆变换 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 627  Solved: 415[Submit][Statu ...

  2. P4575 [CQOI2013]图的逆变换

    传送门 如果新的图里存在边\((u,v)\),那么说明原图中\(u\)的终点和\(v\)的起点是同一个点 于是可以对新图中的每个点维护它的起点和终点,如果有一条边就把对应两个应该相等的点用并查集连起来 ...

  3. [BZOJ 3108] 图的逆变换

    Link: BZOJ 3108 传送门 Solution: 样例教你做题系列 观察第三个输出为No的样例,发现只要存在$edge(i,k),edge(j,k)$,那么$i,j$的出边一定要全部相同 于 ...

  4. bzoj AC倒序

    Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...

  5. 论文解读GCN 1st《 Deep Embedding for CUnsupervisedlustering Analysis》

    论文信息 Tittle:<Spectral Networks and Locally Connected Networks on Graphs> Authors:Joan Bruna.Wo ...

  6. shader复杂与深入:Normal Map(法线贴图)1

    转自:http://www.zwqxin.com/archives/shaderglsl/review-normal-map-bump-map.htmlNormal Map法线贴图,想必每个学习计算机 ...

  7. [离散时间信号处理学习笔记] 8. z逆变换

    z逆变换的计算为下面的复数闭合曲线积分: $x[n] = \displaystyle{\frac{1}{2\pi j}}\oint_{C}X(z)z^{n-1}dz$ 式中$C$表示的是收敛域内的一条 ...

  8. NormalMap 贴图 【转】

    转载: http://www.zwqxin.com/archives/shaderglsl/review-normal-map-bump-map.html   说起Normal Map(法线贴图),就 ...

  9. 译:Local Spectral Graph Convolution for Point Set Feature Learning-用于点集特征学习的局部谱图卷积

    标题:Local Spectral Graph Convolution for Point Set Feature Learning 作者:Chu Wang, Babak Samari, Kaleem ...

随机推荐

  1. git fetch 、git pull 与 git pull --rebase

    1. git fetch 与 git pull 都是从远程拉取代码到本地,git fetch只是拉取到本地,git pull不仅拉取到本地还merge到本地分支中.所以git pull是git fet ...

  2. MyEclipse 编写 JSP 代码时很卡的解决办法

    在网上看到很多方法,都是尝试过,个人感觉都没有说到重点,所以收效甚微. 后来自己总结了一下: 我们都是习惯在MyEclipse 工具,双击jsp 文件打开进行编辑.这时,工具会打开窗口的 Previe ...

  3. POJ 2664

    #include<iostream> #include<stdio.h> #include<algorithm> #define MAXN 105 using na ...

  4. MVC3学习:利用jquery+ajax生成二维码(支持中文)

    二维码越来越热火了,做电子商务网站,不做二维码,你就OUT了. 一.下载DLL文件(ThoughtWorks.QRCode.dll),并在项目中引用.点此下载 如果你还不知道什么是QRCode二维码, ...

  5. Twitter Bootstrap3小结

    今天有空,小结一下Twitter Bootstrap 3的使用.首先不得不说,Bootstrap是迄今(2014)比较好的WEB设计框架(当然,其它的优秀WEB Framework还有:Foundat ...

  6. 为什么要设置Java环境变量(windows)

    在学习JAVA的过程中,涉及到多个环境变量(environment variable)的概念,如PATH.正确地配置这些环境变量,是能够顺利学习.开发的前提.而经常出现的问题是:有的学习者能够按照提示 ...

  7. Spring Boot + Spring Cloud 实现权限管理系统 后端篇(二):数据库设计

    数据库设计 系统主要包含用户(sys_user).组织(sys_dept).角色(sys_role).菜单(sys_menu).角色组织(sys_role_dept).角色菜单(sys_role_me ...

  8. 白话js this指向问题

    前言   通过本文,你大概能了解this基础指向的问题,抛开例子去说this太虚幻,这里还是结合几篇博文做个整理,算是个人的记录了. 先说概念,this指向与申明无关,永远指向距离自己最近的最终调用者 ...

  9. zoj 2104 Let the Balloon Rise(map映照容器的应用)

    题目链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2104 题目描述: Contest time again! Ho ...

  10. JWT操作(.net)

    1.JWT定义 JWT(Json Web Token)是一种用于双方之间传递安全信息的简洁的.URL安全的表述性声明规范.JWT作为一个开放的标准( RFC 7519 ),定义了一种简洁的,自包含的方 ...