摘要: 题意:给出一颗树,按节点进行全排列,给你一棵树,以全排列的第一个树为根节点,求出根节点到其他点的最短路径之和,把这些和在相加,求最后结果分析:对于每一条边都经过了 2*(n-1)!次,用dp算出这棵树上任意两点的最短距离之后乘上次数就是最后结果。例如:1 2 3 4 ... 阅读全文
posted @ 2018-08-25 19:30 dslybyme7 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 题意:给出n个点,m条边,每个点都有一个权值,每个边能且只能经过一次,求经过点的亦或值分析:只显然是一个欧拉图的问题,根据描述有可能是欧拉回路也有可能是偶来通路。我们先判断这个图是否能构成欧拉图,用度数来判断就行,如果度数为奇数的点的个数等于零为欧拉回路,等于二为欧拉... 阅读全文
posted @ 2018-08-24 15:15 dslybyme7 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 题意:从1点到n点,有多条路径,在路径上需要放置障碍物,花费最少,使得1->不通,这里的路径都是所有最短的路径分析:这题本质上是个最小割边问题,直接跑最大流即可,但是这题要求的是最短路径上的最大流,我们可以先从n点预处理一下到每个点的最短距离,然后在增广的时候判断现在... 阅读全文
posted @ 2018-08-24 13:39 dslybyme7 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 题意:给一个序列,问每次最多合并多少数,使得最后只剩一个数时,花费的总和小于题目要求,求这个最多次数的最小值分析:遇到最大值最小问题,第一个想的的策略是二分,二分枚举这个数。先对序列进行排序。在判断的时候,由于huffman的结构,应每次合并的数最小,假设现在这个最多... 阅读全文
posted @ 2018-08-24 13:29 dslybyme7 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 题意:计算C(n,m)%(M1*M2*M3......*Mn) 其中Mi是互不相同的素数分析:如果是C(n,m)%素数 我们直接使用lucas, 但是现在的模是多个素数相乘,所以我们需要配合中国剩余定理,先使用lucas对每一个Mi进行取模运算,保留结果,最后使用中国... 阅读全文
posted @ 2018-08-21 21:59 dslybyme7 阅读(122) 评论(0) 推荐(0) 编辑
摘要: PS:注意是双向边代码:#include #include #include #include #include #include #include #include #include #include #include #include #include #defi... 阅读全文
posted @ 2018-08-21 21:54 dslybyme7 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 题意:公园管理层最终决定在公园的各个战略位置安装一些流行的拳击机。实际上,为了弥补以前缺少的机器,他们决定安装尽可能多的机器。令人惊讶的是,公园不会被新机器堵塞,因为对于机器的位置存在一些非常严重的法律限制。管理层已经标记了所有可能的拳击机位置以及它们在公园计划中的相... 阅读全文
posted @ 2018-08-21 19:31 dslybyme7 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 题意:给出一个图,问最少加几条边使得该图成为强连通图分析:先跑一遍 tarjan 算法求出强连图分量的个数,然后把这些分量缩成一个点,因为一个强连通图的每个点的入度和出度都不为零,所以统计这些点的入为0的数目和出度为0的数目,选择较大的输出即可代码:#include ... 阅读全文
posted @ 2018-08-14 20:51 dslybyme7 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 题意:给出n个字符串,可以从这n个串中取出m个进行排列,给出一个排列好的字符串,求这个串是所有排列中的第几个串分析:场上用的map映射和康拓展开,不停WA,TLE,猝。正确解法是使用Tire将串映射成数字,然后对给出的串的每个字符,求他之前还有多少种排列,然后相加起来... 阅读全文
posted @ 2018-08-11 23:06 dslybyme7 阅读(110) 评论(0) 推荐(0) 编辑
摘要: Nim游戏:有物体若干堆,可以是火柴棍或是围棋子等等均可。两个人轮流从堆中取物体若干,规定最后取光物体者取胜。 假设有三堆物品(a,b,c);我们定义谁面对都是失败的局势称为奇异局势。比如(0,0,0),(0,n,n)都是是一个奇异局势,(1,2... 阅读全文
posted @ 2018-08-07 23:18 dslybyme7 阅读(111) 评论(0) 推荐(0) 编辑