How do you add?(递推)】的更多相关文章

http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1884 题目大意: 把K个不超过N的非负整数加起来,使得他们的和为N,有多少种方法?比如N=5,K=2,有6种方法.即0+5,1+4,2+3,3+2,4+1,5+0. 输入N和K,求方法总数除以10^6的余数 思路: 递推,从(n-1,k)种的解+上1不就是答案了么?同理从(n,k-1)中加上…
将K个不超过N的非负整数加起来,使它们的和为N,一共有多少种方法. 设d(i, j)表示j个不超过i的非负整数之和为i的方法数. d(i, j) = sum{ d(k, j-1) | 0 ≤ k ≤ i },可以理解为前j-1个数之和为i-k,最后一个数为k 还有一种更快的递推办法,把这个问题转化为将N个小球放到K个盒子中的方法数,盒子可以为空. 就等价于求x1 + x2 +...+ xK = N的非负整数解的个数,根据组合数学的知识容易算出结果为C(N+K-1, K-1). 所以也可以这样递推…
一.递推: 所谓递推,简单理解就是推导数列的通项公式.先举一个简单的例子(另一个NOI练习题,但不是这次要解的问题): 楼梯有n(100 > n > 0)阶台阶,上楼时可以一步上1阶,也可以一步上2阶,也可以一步上3阶,编程计算共有多少种不同的走法. 这个问题可以用递归来进行解决,但是解题时间1秒明显不够用.怎么办呢,可以考虑找到“规律”,然后推导公式解决问题,开始画图分析: 这是4个台阶时的全部7种走法,记作f(4)=7.现在观察右侧绿色走过的部分,1234四种情况是3个台阶时的4种走,法记…
平时有关线性递推的题,很多都可以利用矩阵乘法来解决. 时间复杂度一般是O(K3logn)因此对矩阵的规模限制比较大. 下面介绍一种利用利用Cayley-Hamilton theorem加速矩阵乘法的方法. Cayley-Hamilton theorem: 记矩阵A的特征多项式为f(x). 则有f(A)=0. 证明可以看 维基百科 https://en.wikipedia.org/wiki/Cayley–Hamilton_theorem#A_direct_algebraic_proof 另外我在高…
小兔的棋盘 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 9447    Accepted Submission(s): 4879 Problem Description 小兔的叔叔从外面旅游回来给她带来了一个礼物,小兔高兴地跑回自己的房间,拆开一看是一个棋盘,小兔有所失望.不过没过几天发现了棋盘的好玩之处.从起点(0,0)走到终点(n…
1002: [FJOI2007]轮状病毒 Time Limit: 1 Sec Memory Limit: 162 MB Submit: 3543 Solved: 1953 [Submit][Status][Discuss] Description 给定n(N<=100),编程计算有多少个不同的n轮状病毒. Input 第一行有1个正整数n. Output 将编程计算出的不同的n轮状病毒数输出 Sample Input 3 Sample Output 16 HINT 基尔霍夫矩阵Matrix-Tr…
题目:(开始自己描述题目了...) 第一题大意: 求1~n的所有排列中逆序对为k个的方案数,输出方案数%10000,n<=1000. 解:这道题一个递推,因为我基本上没怎么自己做过递推,所以推了一个小时,而其实熟练后几分钟十多分钟就推出来了.好吧,我递推的方法:从n=1 开始递推,当n=2的时候由 n=1 推出,以此类推.如何递推?以n=3,k=3为例:有三种方式结尾,以3结尾,前两个数由1,2 排列,3在1,2后面不产生逆序对,那么方案数就等于当n=2的时候产生3个逆序对的方案数,为0 :以2…
已经有四套题没有写博客了.今天改的比较快,就有时间写.今天这套题是用的图片的形式,传上来不好看,就自己描述吧. 第一题:单词分类 题目大意:有n个单词(n<=10000),如果两个单词中每个字母的数量是一样的(比如:AABAC 和BCAAA)则为一类单词,每个单词长度不大于100,问这些单词可以分为几类? 样例:输入:3  AABCA AAABC BBCAA    输出:2 题解: 每次都在第一题是字符串的时候卡住,这次又卡了一个多小时..一般思路,就是枚举查找,排序,然后一个一个的比较,但是只…
HDU 5860 Death Sequence(递推) 题目链接http://acm.split.hdu.edu.cn/showproblem.php?pid=5860 Description You may heard of the Joseph Problem, the story comes from a Jewish historian living in 1st century. He and his 40 comrade soldiers were trapped in a cave…
题意 题目链接 分析 令 \(f_i\) 表示光线第一次从第一块玻璃射出第 \(i\) 块玻璃的比率. 令 \(g_i\) 表示光线射回第 \(i\) 块玻璃,再射出第 \(i\) 块玻璃的比率. 容易得到: \[\begin{cases}f_i=f_{i-1}a_i+f_{i-1}b_ig_i\\g_i=b_{i-1}a_i+b_{i-1}b_ig_i+a_{i-1}g_{i-1}a_i+a_{i-1}g_{i-1}b_ig_i\end{cases}\] 对于 (2) 式,移项可得 \[g_i…