
欧拉路径相关
bestFy
世界上最最最渣的oier.
展开
-
uoj#117. 欧拉回路
题面在这里题意:求有向图和无向图的欧拉回路。做法:【模板】 具体做法自己百度。。代码:/************************************************************* Problem: uoj#117. 欧拉回路 User: bestFy Language: C++ Result: Acc原创 2018-01-25 19:00:43 · 622 阅读 · 0 评论 -
hdu5883 The Best Path
题面在这里题意:问一个无向图是否有欧拉路径,并且有的话使得经过的点的权值异或和最大,输出这个异或值。做法:首先判图是否连通。 然后度为奇数的点只能有0个或2个。 发现一个性质:(度+1)/2是奇数的点都是在路径上的。 如果度为奇数的点有2个就一个是起点一个是终点,如果0个说明有欧拉回路,则所有点都可以取为起点,枚举一遍选最大值即可。代码:/**********原创 2018-01-25 19:10:46 · 267 阅读 · 0 评论 -
poj1386 Play on Words
题面在这里题意:给n个字符串,两个字符串若头尾字符相同可以连接起来,问你是否可以把n个字符串连接起来。做法:对于一个单词,把它头尾的字符之间连一条有向边,然后问题转化为求这个图是否存在欧拉路径。 一个有向图存在欧拉路径的判断方式:图弱连通所有点的入度都等于出度;或只有两个点的入度不等于出度,且这两个点一个入度-出度=1,另一个出度-入度=1.代码:/原创 2018-01-25 19:17:24 · 262 阅读 · 0 评论 -
bzoj3033: 太鼓达人
题面在这里题意:有一条长度为m的01串(首尾相连),已知其中连续的长度为k的m个01串互不相同,求出m的最大值和字典序最小的01串。做法:将k位二进制数当做点,将k+1位二进制数当做边,发现该图为欧拉图,m=2k" role="presentation" style="position: relative;">m=2km=2km=2^k; 第二问由于是欧拉图,直接大暴力很快就原创 2018-01-26 16:51:38 · 522 阅读 · 0 评论 -
bzoj3659: Which Dreamed It
题面在这里题意:有n个房间,每个房间有若干把钥匙能够打开某个房间的门。 最初你在房间1。每当你到达一个房间,你可以选择该房间的一把钥匙,前往该钥匙对应的房间,并将该钥匙丢到垃圾桶中。你希望最终回到房间1,且垃圾桶中有所有的钥匙。 求方案数。两组方案不同,当且仅当使用钥匙的顺序不同。 每把钥匙都是不同的。 房间数小于等于100,钥匙数小于等于200000.做法:我做的原创 2018-01-28 14:15:16 · 454 阅读 · 0 评论