摘要:
"题目链接" 记忆化搜索 这是一道区间DP的模板题。初学dp的话还是记忆化搜索好理解一些,很多dp其实也是从记忆化搜索转换过来的。考虑最后一步,我们要把两堆石子合并成一堆,那么肯定是某一个点为分割点分成的两堆石子,而这两堆石子也是由某一个点为分割点组成的,如此递推下去。所以我们倒着把一堆石子拆成两堆 阅读全文
摘要:
题目链接 #题目大意 给无限深度一颗k叉树,每个最小子树的边的权值都是1~k,问有多少从根结点出发,路径和为n且最少一条边为d的路径。 #解题思路 首先看到要取模就知道直接枚举出所有的情况肯定是不可取的。考虑一下,如果有一条路径可以到达n,那之前肯定有路径可以到达n-1、n-2...n-k,然后在前 阅读全文
摘要:
"题目链接" 题目大意 两个串混在一起能不能组成第三个串,并且两个串字符之间顺序不变。 解题思路 因为两个串字符之间的原顺序不变,所以我们可以从头枚举第三个串,他的每一位肯定都是由两个串之间的一个串的某位构成的,如果不是,那么一定无解。如果枚举到某一位三个串都有共同的字符,就会出现分支,所以如果暴力 阅读全文
摘要:
"题目链接" 题目大意 给一个(或多个)无向图,问是否有办法去掉一条边,使得至少有两个以上的无向图,如果可以问最少花费。 解题思路 很明显就是找权值最小的桥,但是如果本来就有多个无向图的话,那就没有必要炸桥了。另外还有一个坑点是,如果得到的桥的最小w为0,那么最至少得派一个人去炸(没人怎么炸桥。。。 阅读全文
摘要:
"题目链接" 题目大意 给定多张无向图,求出每张图中割点数量。 解题思路 模板题。如果一个结点的儿子没法不通过该结点到达时间戳更小的点,说明这个结点是割点。 代码 阅读全文
摘要:
"题目链接" 题目大意 给一个图问最少添加多少边之后它会变成强连通图。 解题思路 对于一个缩点之后的dag图,我们考虑它的入度为0的点和出度为0的点。我们把一个入度为0的和出度为0的点相连,或者把一个入度为0的点连到另外一个度数大于等于2的点上,又或者把一个出度为0的点连到另外一个度数大于等于2的点 阅读全文
摘要:
"题目链接" 题目大意 给你一个图,从0出发可以到达每个点,问从0出发访问每条边的花费,图中如果一些点可以相互到达的话,那么这些点之间的边的花费可以忽略不计。 解题思路 从相互到达的点的花费可以忽略这点来看,显然是让算强连通分量的。对于同一个强连通分量,只需要找一个最短的边,这个边连接另外一个强连通 阅读全文
摘要:
"题目链接" 解题思路 题目要求需要联系的最少人数和最小花费。先求出图中所有的连通分量,然后把他们都缩成一个点,这个点的花费就是同一连通分量中的最小的花费。对于缩点之后的图,找出所有入度为0的点开始就行了,为什么呢?因为没有点能够到达入度为0的点,所以对于每一个这样的点都需要访问一次。 代码 阅读全文
摘要:
"题目链接" 解题思路 题目的意思很明显,就是让判断一个图是不是一个连通图。这里测试一下$tarjan$算法求强连通分量的模板。 代码 阅读全文
摘要:
题目链接 #题目大意 人自出生起就有体力,情感和智力三个生理周期,分别为23,28和33天。一个周期内有一天为峰值。现在给出三个日期,分别对应于体力,情感,智力出现峰值的日期。然后再给出一个起始日期,要求从这一天开始,算出最少再过多少天后三个峰值同时出现。 #解题思路 这是一道关于中国剩余定理的裸题 阅读全文