DP
文章平均质量分 56
ZLTJohn
这个作者很懒,什么都没留下…
展开
-
2020小米网络赛第二场 F-Modulo Nine
题意F-Modulo Nine给定m个区间[li,ri],问带前导零的n位数,有多少个数满足:∀i,∏k=liriak%9==0 \forall i,\prod_{k=l_i}^{r_i}a_k \%9==0∀i,k=li∏riak%9==0其中a[k]表示这个数的第k位,n,m<=1000.分析思维方向有很多,比较靠谱的是逐位填数dp。一个区间要合法,只需要有2个3的因子即可,一个0、9算两个3的因子,3、6算一个。我们先不考虑填0、9,考虑只填3、6。那么一个位置的状态只有两种原创 2020-12-17 19:48:43 · 187 阅读 · 0 评论 -
[CF868E]Policeman and a Tree
题目大意给你一颗有n个点的树,每条边有边权,有一个警察一开始在点S,他的速度是1,即通过一条长度为x的边要花x单位时间。 有m个罪犯,一开始第i个在点x[i],他们的速度无限快。 如果罪犯和警察到达同一个点,那么罪犯会被抓住。 现在罪犯们想最大化最后一个被抓的时间,警察想最小化抓的时间。 n<=50解题思路不看wxh的博客都不会qwq 我们从一开始的局面考虑。 警察在...原创 2018-06-01 22:46:29 · 560 阅读 · 0 评论 -
[JZOJ5728]简单计数||
题目描述 解题思路乍一看不是很会。 先考虑不是环怎么做。 考虑分类地计数,即把方案归到某一类型里,再分别计算每一个类型的数量来求答案。 最终一种方案肯定有若干段相同颜色段,我们可以直接考虑每一种颜色的划分贡献,然后再算出他们组合起来的方案数。 具体地,我们计算出f(i,j)表示把i个相同的球分成j段的贡献和,一种方案贡献为每段大小乘积。然后,我们把同颜色的i个球缩成j个,然后...原创 2018-05-22 22:20:20 · 384 阅读 · 0 评论 -
[矩阵树定理][prufer序][CF917D]Stranger Trees
题目描述给定一棵n个点组成的有标号的树T,我们定义两棵有标号的树的相似度为它们共有的边的个数。 现在我们想知道,n个点的完全图所有的有标号的生成树中,有多少棵树与T的相似度为 0,1,2 … n - 1,答案对10^9+7取模 对于20%的数据,n <= 6。 对于40%的数据,n <= 15。 对于另外20%的数据,T中存在一个度数为n - 1的点。 对于100%的数据...原创 2018-04-11 16:27:41 · 840 阅读 · 0 评论 -
[JZOJ4236] 登山
题目描述恶梦是一个登山爱好者,今天他来到了黄山。 俗话说的好,不走回头路。所以在黄山,你只能往前走,或者往上走。并且很显然的是,当你走到山脊的时候,你不能够往上走,你只能往前走一步再往上走。 抽象一点而言就是,你可以把黄山视为一个N * N格点图,恶梦从(0,0)开始出发,要走到(N,N)。当他走到位置(x,y)的时候,它可以往(x + 1,y),或(x,y+1)走。 并且当他走到(x,...原创 2018-04-10 16:34:00 · 579 阅读 · 0 评论 -
[CF700E][JZOJ5558][线段树合并]Cool Slogan
题目大意给你一个长度为n的字符串S,求最长的一个字符串序列a[1..k]满足序列中的每一个字符串都是S的子串,且对于任意的1<i<=k1<i<=k1原创 2018-03-04 22:31:45 · 587 阅读 · 0 评论 -
[JZOJ5591]. 修修的铁拳
题目描述给出初始点(x0,y0),你可以走T步,每次上下左右,最终你会走到一个点(x,y),这个点的贡献是xnymxnymx^ny^m,问所有方案的贡献和。 解题思路考虑40分怎么做,可以枚举一个(x,y),算出到这里的方案数,然后乘上贡献。 另一个思路是dp地维护第i步的贡献和。 考虑某个方案往左右走,(x-1,y)+(x+1,y)的贡献,二项式展开((x+1)n+(x−1)n...原创 2018-03-16 21:41:09 · 383 阅读 · 0 评论 -
[agc013d] Pilling Up
题目大意有两种元素,一种0一种1,一开始,你可以随便拿01,总共拿n个。 然后你进行m次操作,每次操作先从手上拿一个元素,放在你的构造序列末尾,然后再获得0,1各一个,然后再放一次。 问最后有多少种不同的序列。 n,m<=3000解题思路一个很简单的想法是设f[i][j]表示做了第i轮,剩下j个0的时候,有多少种不同的序列。 然后根据题意转移。 但是如果直接把f[0...原创 2018-02-19 10:32:13 · 1996 阅读 · 0 评论 -
[agc013e]Placing Squares
前言看到以为是整数拆分什么的搞了好久…题目大意给你一个n,你要计算所有序列(a[1]…a[x])的贡献和。 设s[i]表示序列前i个的前缀和,序列必须要满足: 1,s[x]=n; 2,给一个b[1..m],要求对于任意i,s[i]不能是b中的元素。 一个序列的贡献为所有元素平方的乘积。 (原本的问题是在一条1*n的纸带上段进行正方形底边完全覆盖) n<=1e9,m&l...原创 2018-02-19 16:57:31 · 540 阅读 · 0 评论 -
【agc016_f】
题目大意给你一个DAG,边只从编号小的点连到大的点。给你两个棋子一个在1号一个在2号,小A(先手)和小B轮流进行操作:把一个棋子沿着边(x,y)从x移到y。不能操作者输。问原图有多少个子图满足小A必胜。 n<=15解题思路首先辨认出是个组合游戏,那么考虑使用SG函数。 我们想要知道有多少种方案sg[1]!=sg[2]。那么我们可以统计sg[1]=sg[2]的然后再减掉。 一...原创 2018-02-18 23:46:46 · 399 阅读 · 0 评论 -
[agc017f]Zigzag
题目大意给你一个有n*(n-1)/2个点的等边三角形,顶端的点为(1,1),对于第i行,一共有i个点(i,1..i),你要在这个三角形上画m条折线,每条线包含n个点。具体的,假如你目前折线端点画到(i,j),你可以选择画到(i+1,j)或(i+1,j+1)。 现在给你约束: 1,对于任意折线a,b,设X[a][i]表示折线a的第i个端点为(i,X[a][i]),若a小于b,则对于所有i=1...原创 2018-02-17 20:37:43 · 377 阅读 · 0 评论