图论-课堂例题

证明:在连通图G中,任二个最长路必有公共顶点。

(反证法)

(1)

o------o-------o-------o  p

o------o-------o-------o  q

(2)

o  o------o-------o

    |

    |

o      o------o-------o

矛盾

2、在连通图中,d(v)=偶数,w(G-v) <= d(v)/2

例1.8 设一金库只有一个大门,其内部被分隔成一些小房间(把走廊、门厅

等都看成房间)。各房间除了一个放有稀世大钻石的房间外,都有偶数个门(大门也

是一个门)。则能撬开每个门的大盗一定可将钻石偷走。

证明 不计金库大门(则大门门厅也只有奇数个门),以金库的所有房间为顶

点集作一图G ,两顶点间用一边相连当且仅当对应的两个房间有一个门相连。则图

G 中恰只有与大门门厅及存放钻石的房间对应的两个顶点(设为x 与y )为奇点,

其余顶点都是偶点。

我们的问题变成要证明任一图G 中若恰只有两个奇点x 与y ,则G 中一定存

在(x ,y )路。

设若不然,则G 不连通,且x 与y 在G 的不同分支中。于是,G 中包含x 的分

支,是一个只包含一个奇点的图,这与推论132 相矛盾。//

时间: 2024-08-05 03:19:06

图论-课堂例题的相关文章

删除部分字符使其变成回文串问题——最长公共子序列(LCS)问题

先要搞明白:最长公共子串和最长公共子序列的区别. 最长公共子串(Longest Common Substirng):连续 最长公共子序列(Longest Common Subsequence,LCS):不必连续 实在是汗颜,网上做一道题半天没进展: 给定一个字符串s,你可以从中删除一些字符,使得剩下的串是一个回文串.如何删除才能使得回文串最长呢?输出需要删除的字符个数. 首先是自己大致上能明白应该用动态规划的思想否则算法复杂度必然过大.可是对于回文串很难找到其状态和状态转移方程,换句话说就是:某

java表达式类型自动提升

[一道经典的Java面试题] short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? 答案是:前者错,后者对.相信不管是否经历过java面试过,大家一定对这道题很熟悉.因为这道题确实太经典了,以至于成为了基本每个老师都会拿出来,当作课堂例题来讲.要说清这道题,首先看看java表达式类型转换规则. [java表达式类型转换] java是一门强类型语言,不仅每个变量具有指定的数据类型,它的表达式也有指定的数据类型.因此在不同类型之间进行

Contest Hunter CH6201 走廊泼水节 最小生成树 Kruskal

$ \rightarrow $ 戳我进CH原题 走廊泼水节 0x60「图论」例题 总时限10 s $ \quad $ 总内存256 MiB 描述 [简化版题意]给定一棵N个节点的树,要求增加若干条边,把这棵树扩充为完全图,并满足图的唯一最小生成树仍然是这棵树. 求增加的边的权值总和最小是多少. 我们一共有 $ N $ 个OIER打算参加这个泼水节,同时很凑巧的是正好有 $ N $ 个水龙头(至于为什么,我不解释). $ N $ 个水龙头之间正好有 $ N-1 $ 条小道,并且每个水龙头都可以经过

CH6201 走廊泼水节【最小生成树】

6201 走廊泼水节 0x60「图论」例题 描述 [简化版题意]给定一棵N个节点的树,要求增加若干条边,把这棵树扩充为完全图,并满足图的唯一最小生成树仍然是这棵树.求增加的边的权值总和最小是多少. 我们一共有N个OIER打算参加这个泼水节,同时很凑巧的是正好有N个水龙头(至于为什么,我不解释).N个水龙头之间正好有N-1条小道,并且每个水龙头都可以经过小道到达其他水龙头(这是一棵树,你应该懂的..).但是OIER门为了迎接中中的挑战,决定修建一些个道路(至于怎么修,秘密~),使得每个水龙头到每个

Python入门习题1.温度转换

这一节的课堂例题为: 例1.编写一个Python程序,完成摄氏度到华氏度,华氏度到摄氏度的温度转换. 解: (1)分析问题:利用程序实现温度转换,由用户输入温度值,程序给出输出结果. (2)划分边界:IPO描述如下 输入(Input):带华氏或摄氏标志的温度值 处理(Process):根据温度标志选择适当的温度转换算法 输出(Output):带有华氏或摄氏标志的温度值 (3)设计算法:C表示摄氏度,F表示华氏度. C = (F - 32) / 1.8 F = C*1.8 + 32 (4)编写程序

CH6303 天天爱跑步

6303 天天爱跑步 0x60「图论」例题 描述 小C同学认为跑步非常有趣,于是决定制作一款叫作<天天爱跑步>的游戏.<天天爱跑步>是一个养成类游戏,需要玩家每天按时上线,完成打卡任务. 这个游戏的地图可以看作一棵包含 n (n≤3*10^5) 个节点和 n-1 条边的树,任意两个节点存在一条路径互相可达.树上节点的编号是 1~n 之间的连续正整数. 现在有 m (m≤3*10^5) 个玩家,第 i 个玩家的起点为 S_i,终点为 T_i.每天打卡任务开始时,所有玩家在第0秒同时从

CH6803 导弹防御塔

6803 导弹防御塔 0x60「图论」例题 背景 Freda的城堡-- "Freda,城堡外发现了一些入侵者!" "喵...刚刚探究完了城堡建设的方案数,我要歇一会儿嘛lala~" "可是入侵者已经接近城堡了呀!" "别担心,rainbow,你看呢,这是我刚设计的导弹防御系统的说~" "喂...别卖萌啊--" 描述 Freda的城堡遭受了M个入侵者的攻击!Freda控制着N座导弹防御塔,每座塔都有足够数量的

CH6802 車的放置

6802 車的放置 0x60「图论」例题 描述 给定一个N行M列的棋盘,已知某些格子禁止放置.问棋盘上最多能放多少个不能互相攻击的車.車放在格子里,攻击范围与中国象棋的"車"一致.N,M≤200. 输入格式 第一行为n,m,t(表示有t个禁止的格子) 第二行到t+1行为x,y,分别表示禁止格子所在的位置,x为第x行,y为第y列,行列编号从1开始. 输出格式 一个整数,表示最多能放多少个車. 样例输入 8 8 0 样例输出 8 题解 把行.列看成节点 1要素:行节点.列节点只能放一个 0

CH6901 骑士放置

6901 骑士放置 0x60「图论」例题 描述 给定一个 N*M 的棋盘,有一些格子禁止放棋子.问棋盘上最多能放多少个不能互相攻击的骑士(国际象棋的"骑士",类似于中国象棋的"马",按照"日"字攻击,但没有中国象棋"别马腿"的规则).N, M<=100. 输入格式 第一行为n,m,t(表示有t个禁止的格子) 第二行到t+1行为x,y,分别表示禁止格子所在的位置,x为第x行,y为第y列,行列编号从1开始. 输出格式 一个整