摘要:
题目大意:给定一个 N 个点,M 条边的有向图,求每个点能够到达的节点的最大编号是多少。 题解:因为题中所给图不一定是一个 DAG,因此无法进行按照拓扑序来动态规划,需要另辟蹊径。由于求的是每个节点能够到达的最大编号,因此可以考虑反向建图,并依次从大到小枚举节点编号,将该节点能够到达的节点修改为当前 阅读全文
摘要:
题目大意:给定 N 种不同种类的硬币,每种硬币的重量范围在一个可变区间内,但是价值恒定,求给定一个重量 W,求有多少种面值不同的组合方式。 题解:如果硬币的重量恒定,那么就是一道裸的完全背包问题。因此, 可以先将给定的硬币拆分成多个重量不同的硬币。 总的来说,这道题所求的是目标状态有多少种可能的解, 阅读全文
摘要:
题目大意:给定一个长度为 N 的序列,求这个序列中等差数列的个数。 题解:根据题意应该是一道序列计数 dp。设 $dp[i][j]$ 表示以第 i 项结尾,公差为 j 的等差数列的个数,则状态转移方程为 $dp[i][d]=\sum\limits_{j=1}^{i 1} dp[j][d]$。由于一个 阅读全文
摘要:
题目大意:列出从一个给定上界的双平方数集合中选出若干个数,组成长度为 N 的等差数列的首项和公差。 题解:首先,因为是在双平方数集合上的等差数列,而且根据题目范围可知,上界不超过 2e5,可以先打表,将符合条件的双平方数存入一个数组,并排序离散化。 在等差数列中,只要数列中的前两项确定,整个数列就会 阅读全文