看了这篇博客https://blog.csdn.net/u013520118/article/details/48032599

但是这篇里面没有写结论的证明, 我来证明一下。

首先结论是对于E图而言,如果存在i和j结点到k1都有边,而i和j中只有一个结点到k2有边,则这个图是不可能转化来的。

首先先讲E图中i和j结点到k1都有边, 那么图会是怎么样的呢?有三种情况
大家可以发现,在D图中,  i边的起点和j边的起点无论如何都会连在同一个点上, 那么, 假设i边起点为i0, j变起点为j0,
都连在p点上。
那么在E图中如果i和j其中一个点, 比如i点, 有另外一条边连到k2的话

那也就是说在D图中i边的终点p多了一条连向其他点的边, 那么又因为j也连着p点, 所以在E图中必然有j到k2的一条边。
如图所示。
注意这个从p点出去的这个q点不一定是新的点, 也可以就是i点或者j点, 但是总之有一条边是以p点为起点的。
显然可以看到, 这个时候符合存在边jp和pq, 也就是说E图中必然还有一条边是j到k2的, 所以只要其中一个点

连到了k2, 那么另外一个点肯定存在边到k2, 不可能出现只有一个点连到k2的情况。

因此得出结论:对于E图而言,如果存在i和j结点到k1都有边,而i和j中只有一个结点到k2有边,则这个图是不可能转化来的。

#include<cstdio>
#include<cstring>
#define REP(i, a, b) for(int i = (a); i < (b); i++)
using namespace std; const int MAXN = 312;
int g[MAXN][MAXN], n, m; bool judge()
{
REP(i, 0, n)
REP(j, 0, n)
{
bool ok1 = false, ok2 = false;
REP(k, 0, n)
{
if(g[i][k] && g[j][k]) ok1 = true;
if(g[i][k] ^ g[j][k]) ok2 = true;
}
if(ok1 && ok2) return false;
}
return true;
} int main()
{
int T, kase = 0;
scanf("%d", &T); while(T--)
{
memset(g, 0, sizeof(g));
scanf("%d%d", &n, &m);
REP(i, 0, m)
{
int x, y;
scanf("%d%d", &x, &y);
g[x][y] = 1;
}
printf("Case #%d: %s\n", ++kase, judge() ? "Yes" : "No");
} return 0;
}


紫书 习题 8-25 UVa 11175 (结论证明)(配图)的更多相关文章

  1. 紫书 习题8-10 UVa 1614 (贪心+结论)

    这道题我苦思冥想了一个小时, 想用背包来揍sum/2, 然后发现数据太大, 空间存不下. 然后我最后还是去看了别人的博客, 发现竟然有个神奇的结论-- 幸好我没再钻研, 感觉这个结论我肯定是想不到的- ...

  2. 紫书 习题 11-9 UVa 12549 (二分图最小点覆盖)

    用到了二分图的一些性质, 最大匹配数=最小点覆盖 貌似在白书上有讲 还不是很懂, 自己看着别人的博客用网络流写了一遍 反正以后学白书应该会系统学二分图的,紫书上没讲深. 目前就这样吧. #includ ...

  3. 紫书 习题 11-8 UVa 1663 (最大流求二分图最大基数匹配)

    很奇怪, 看到网上用的都是匈牙利算法求最大基数匹配 紫书上压根没讲这个算法, 而是用最大流求的. 难道是因为第一个人用匈牙利算法然后其他所有的博客都是看这个博客的吗? 很有可能-- 回归正题. 题目中 ...

  4. 紫书 习题8-12 UVa 1153(贪心)

    本来以为这道题是考不相交区间, 结果还专门复习了一遍前面写的, 然后发现这道题的区间是不是 固定的, 是在一个范围内"滑动的", 只要右端点不超过截止时间就ok. 然后我就先考虑有 ...

  5. 紫书 习题8-7 UVa 11925(构造法, 不需逆向)

    这道题的意思紫书上是错误的-- 难怪一开始我非常奇怪为什么第二个样例输出的是2, 按照紫书上的意思应该是22 然后就不管了,先写, 然后就WA了. 然后看了https://blog.csdn.net/ ...

  6. 紫书 习题 11-10 UVa 12264 (二分答案+最大流)

    书上写的是UVa 12011, 实际上是 12264 参考了https://blog.csdn.net/xl2015190026/article/details/51902823 这道题就是求出一种最 ...

  7. 紫书 习题 11-17 UVa 1670 (图论构造)

    一开始要符合题目条件, 那么肯定没有任何一个点是孤立的, 也就是说没有点的度数是1 所以我就想让度数是1的叶子节点相互连起来.然后WA 然后看这哥们的博客 https://blog.csdn.net/ ...

  8. 紫书 习题 8-21 UVa 1621 (问题分析方法)

    知道是构造法但是想了挺久没有什么思路. 然后去找博客竟然只有一篇!!https://blog.csdn.net/no_name233/article/details/51909300 然后博客里面又说 ...

  9. 紫书 习题 8-20 UVa 1620 (找规律+求逆序对)

    这道题看了半天没看出什么规律, 然后看到别人的博客, 结论是当n为奇数且逆序数为奇数的时候 无解, 否则有解.但是没有给出证明, 在网上也找到详细的证明--我也不知道是为什么-- 求逆序对有两种方法, ...

随机推荐

  1. background--详解(背景图片根据屏幕的自适应)

    background:有以下几种属性: background-color background-position background-size background-repeat backgroun ...

  2. 百度图标echarts.js的使用

    echarts官网:http://echarts.baidu.com/api.html#echarts echarts是百度公司开的一种开源制作图片工具,是一个专门制作图表的开源工具,功能非常强大,地 ...

  3. 使用Storyboard实现复杂界面

    http://blog.csdn.net/guchengluoye/article/details/7472771 http://wangjun.easymorse.com/?p=1564 http: ...

  4. php获取时间是星期几

    PHP星期几获取代码: date("l"); //data就可以获取英文的星期比如Sundaydate("w"); //这个可以获取数字星期比如123,注意0是 ...

  5. md5如何实现encodePassword加密方法

    后台的加密代码:用户名:zhangsan   密码:123 /** * 编译密码,即加密 * @param user 用户信息 * @param password 密码 * @return 返回值为加 ...

  6. 机器学习关于AUC的理解整理

    AUC 几何意义:ROC曲线与X轴的面积 https://blog.csdn.net/luo3300612/article/details/80367901 AUC物理意义:随机给定一个正样本和一个负 ...

  7. LoadRunner监控Window/Unix系统资源的配置

    LoadRunner监控Window/Unix系统资源需要做两件事情: 1.配置被监视的服务器,以便于LoadRunner能够获取系统资源使用情况的数据 2.在LoadRunner的Controlle ...

  8. [Angular] Fetch non-JSON data by specifying HttpClient responseType in Angular

    By default the new Angular Http client (introduced in v4.3.1) uses JSON as the data format for commu ...

  9. Oracle性能分析1:开启SQL跟踪和获取trace文件

    当Oracle查询出现效率问题时,我们往往须要了解问题所在,这样才干针对问题给出解决方式.Oracle提供了SQL运行的trace信息,当中包括了SQL语句的文本信息.一些运行统计,处理过程中的等待, ...

  10. SQL学习之使用order by 依照指定顺序排序或自己定义顺序排序

    我们通常须要依据客户需求对于查询出来的结果给客户提供自己定义的排序方式,那么我们通常sql须要实现方式都有哪些,參考很多其它资料总结例如以下(不完好的和错误望大家指出): 一.假设我们仅仅是对于在某个 ...