HDU 5629 Clarke and tree dp+prufer序列】的更多相关文章

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=562 题意: 求给每个节点的度数允许的最大值,让你求k个节点能组成的不同的生成树个数. 题解: 对于n个节点形成的一颗生成树,有一个与之唯一对应的大小为n-2的prufer数列. 并且一个节点的度数减一为它出现在prufer数列中的次数. 那么我们求生成树的个数可以转化为求prufer数列的可重集排列,而这个可以用dp来做. dp[i][j][k]表示处理到第i个节点,已经用了j个节点,且可重集大小…
Description Input Output Sample Input Sample Output Solution 题意:给你$n$个点,还有每个点的度数,问你任选$i(1\leq i \leq n)$个点构成树的方案数. 这种统计生成树的题,很容易想到用$prufer$序列搞. $prufer$序列有一个很重要的性质,一个度数为$d$的点会在$prufer$序列里出现$d-1$次. 那么我们设$f[i][j][k]$表示$DP$完前$i$个点,选了其中的$j$个点,当前$prufer$序…
[CF917D]Stranger Trees 题意:给你一棵n个点的树,对于k=1...n,问你有多少有标号的n个点的树,与给出的树有恰好k条边相同? $n\le 100$ 题解:我们先考虑容斥,求出和给出的树至少有k个点相同的树的数量.我们先选出原树中的k条边,然后剩下的边随便连.选出k条边后,原树被分成n-k个连通块,设其大小分别为$siz_1,siz_2...siz_{n-k}$.那么剩下的边随便连的方案数是多少呢?我们不妨把每个连通块看成一个点,答案变成n个点的完全图的生成树个数,根据P…
Clarke and problem Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5464 Description 克拉克是一名人格分裂患者.某一天,克拉克分裂成了一个学生,在做题. 突然一道难题难到了克拉克,这道题是这样的: 给你nn个数,要求选一些数(可以不选),把它们加起来,使得和恰好是pp的倍数(00也是pp的倍数),求方案数. 对于nn很小的时候,克拉克是能轻…
Clarke and math 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5628 Description Clarke is a patient with multiple personality disorder. One day, he turned into a mathematician, did a research on interesting things. Suddenly he found a interesting fo…
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1243 d[i][j] 代表第i 个字符与第 j 个字符的最大的得分.,, 最大公共子序列变形 #include <cstring> #include <cstdlib> #include <cstdio> #include <iostream> #include <algorithm> using namespace std; +; char s[max…
Strategic Game Time Limit: 20000/10000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 3806    Accepted Submission(s): 1672 Problem Description Bob enjoys playing computer games, especially strategic games, but some…
HDU 5628 Clarke and math 本文属于一个总结了一堆做法的玩意...... 题目 简单的一个式子:给定$n,k,f(i)$,求 然后数据范围不重要,重要的是如何优化这个做法. 这个式子有$n$种问法,而且可以变式扩展,所以说这个式子也是比较重要的: 我们约定如果给定了$n,k$那么我们的$g$写作$g_k(n)$,如果给定了$n,k$中间的任意一个,枚举另一个,或者另一个是变化的,那么另一个数记为$i,j$ 把$1~n$或$1~k$的$g_k(i)$或$g_i(n)$都求出来…
LINK:优雅的绽放吧,墨染樱花 当时考完只会50分的做法 最近做了某道题受到启发 故会做这道题目了.(末尾附30分 50分 100分code 看到度数容易想到prufer序列 考虑dp统计方案数. 设f[i][j]表示前i个数字占了prufer序列j个位置的方案数.最后答案为f[n][n-2]. 容易想到转移 \(f[i][j]+=f[i-1][k]\cdot C(n-k,j-k)\cdot w_i^{j-k+1}\cdot (j-k+1)\) 复杂度n^3 期望得分30. 容易发现第二维是一…
题面 我编不下去了! 给出 n n n 个点,第 i i i 个点的度数限制为 a i a_i ai​,现在需要选出 x x x 个点构成一颗树,要求这 x x x 个点中每个点的度数不超过这个点的 a i a_i ai​ 值,求 x = 1 , 2 , - , n x=1,2,\ldots,n x=1,2,-,n 时的方案数. 两种方案不同,当且仅当选出的点集不同或者连边的方式不同. 输入格式 第一行一个正整数 T T T,代表有 T T T 组数据.每组数据第一行一个正整数 n n n 第二…