题目描述 你有一个无向连通图,边的总数为偶数.设图中有k个奇点(度数为奇数的点),你需要把它们配成k/2个点对(显然k被2整除).对于每个点对(u,v),你需要用一条长度为偶数(假设每条边长度为1)的路径将u和v连接.每条路径允许经过重复的点,但不允许经过重复的边.这k/2条路径之间也不能有重复的边. 输入 第一行有两个整数n,m(2<=n,m<=250000),分别表示点数.边数,m为偶数.接下来m行,每行两个整数a,b(1<=a,b<=n,a≠b),表示a,b间连有一条边.不存…
如果没有长度为偶数的限制,新建一个点向所有奇点连边,跑欧拉回路即可,显然此时一定存在欧拉回路,因为所有点度数都为偶数. 考虑长度为偶数的限制,将每个点拆成两个点放进一个二分图里,那么每条原图中的边在二分图中会对应两条边,一条长度为偶数的路径在二分图中显然是由某部分出发再走回这部分.我们需要让每条原图中的边恰在二分图中出现一次,且保证所有点度数为偶数,这样仍然跑个欧拉回路就完了. 对原图任意取一棵生成树.让非树边任意连,然后通过树边调整度数以达到目的.注意到新建点并连边后,原图中所有点度数都为偶数…
http://acm.hdu.edu.cn/showproblem.php? pid=4850 题意:构造长度为n的字符序列.使得>=4的子串仅仅出现一次 事实上最长仅仅能构造出来26^4+4-1= 456979 的序列,大于该数的都是不可能的.构造方法.就是那种欧拉回路的序列,此题DFS会爆栈.手动扩展栈也能够AC...... 递归形式的開始WA了.没有细调就换非递归了,后来又想了想,尽管自己电脑上执行不了.可是先把长度按小的来.然后调试代码,然后在扩大,AC了,当时错在MOD,递归的MOD应…
题面传送门 题目大意:给你一张可能有重边的不保证联通的无向图,现在要在这个图上找出两条路径,恰好能覆盖所有边一次,根据边的编号输出方案,无解输出-1 一道很不错的欧拉路径变形题 首先要知道关于欧拉路径的一种算法:Hierholzer算法 这位神犇的讲解非常不错 欧拉路径与欧拉回路 我们称度为奇数的点为奇点,度为偶数的点为偶点 从一个点开始走,把其它所有边都走了一遍,叫欧拉路径 从一个点开始走,把其它所有边都走了一遍又回到了这个点,叫欧拉回路 如果图中存在欧拉回路,所有点均为偶点,画画图就明白了…
向别人学习一波,记点流水帐.17.5.29开坑. 5.29 早晨看了道据说是树状数组优化DP的题(hdu5542),然后脑补了一个复杂度500^3的meet in the middle.然后死T...弃疗. 上午考试有一道sb线段树和一道简单数位DP.还有一道是毕姥爷在WC讲的"超立方体".对着数据范围的表格写了半天部分分然后你告诉我测试数据和这个数据范围根本不一样? 并不会FWT,又因为不太想学新算法,就决定不改题了. 下午先把某个课件的坑填完了.然后在bzoj上乱逛. 决定写写SD…
首先安慰自己:做的没集训队快很正常-- 很正常-- 做不完也很正常-- 很正常-- 全都不会做也很正常-- 很正常-- 表格 试题一 完成情况 试题二 完成情况 试题三 完成情况 cf549E cf674G arc103_f cf594E agc034_f agc030_d cf575E agc035_c agc026_f cf607E agc038_e agc030_c cf611G ✔ agc034_d agc024_f cf571E cf696F arc093_e cf573E cf704…
MZL's endless loop Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 898    Accepted Submission(s): 178Special Judge Problem Description As we all kown, MZL hates the endless loop deeply, and he…
题目链接 大意: 给你一个无向图. 要求加最少的边,然后给这些无向图的边定向,使得每一个点的出入度都是偶数. 输出定向后的边数和边集. n<=10^5 m<=2*10^5 很巧妙的构造题-- 可以发现答案的下界是\(度数为奇数的点个数m + 度数为奇数的点个数/2\) 因为是无向图,度数为奇数的点不可能有奇数个,于是考虑往每两个度数为奇数的点间连一条边.于是就可以愉快地跑欧拉回路啦.跑出来后在欧拉回路上构造像\(a\rightarrow b\leftarrow c\rightarrow d -…
题意:给定n个点,e条边和每条边的长度t,每两个点之间都有路相连,让你求一条最短的路经过这e条边. 析:刚开始想到要判连通,然后把相应的几块加起来,但是,第二个样例就不过,后来一想,那么有欧拉回路的还得加1啊. 又想每次再判一次是不是欧拉回路,怎么判又是问题,因为并不知道哪些是连在一块的,还得再查找,麻烦啊.... 后来上网看了一下题解,原来是要构造啊,也就是说把每个连通块都构造成一个欧拉回路,那么再减去端点的,就能完全连通了. 真是好方法,欧拉回路满足每个点的度都是偶数,也就是说如果不是偶数那…
传送门 如果把一条线段\([l,r]\)看成一条无向边\((l,r+1)\),从\(l\)走到\(r+1\)表示线段\([l,r]\)染成红色,从\(r+1\)走到\(l\)表示线段\([l,r]\)染成蓝色,那么题目等价于给每一条边定下方向,使得对于所有点,从左往右经过的次数和从右往左经过的次数差的绝对值不超过\(1\). 对于直线上所有奇数度的点,从左往右两两配对,那么就是要求对于所有的点从左往右经过的次数等于从右往左经过的次数.不难想到这是一个欧拉图.求解欧拉回路给边定向即可. 注意直线上…