随笔分类 - 递推
摘要:递推思路首先考虑 n条直线最多分平面问题n条直线,最多可以把平面分为多少个区域。当有n-1条直线时,平面最多被分成了f(n-1)个区域。则第n条直线要是切成的区域数最多,就必须与每条直线相交且不能有同一交点。这样就会得到n-1个交点。这些交点将第n条直线分为2条射线和n-2条线断。而每条射线和线断将...
阅读全文
摘要:现对于上一道”神、上帝以及老天爷” 只求M个数的错排数 不同的本题 是求N个数中M的错排数先从N个数中 取M个数有CnM种取法 再乘上M的错排数就是答案 错排数的求法参考上一篇文章其中组合公式如下 #include#include#includeusing namespace std;...
阅读全文
摘要:错排简化公式:D(n) = [n!/e+0.5]其中e是自然对数的底,[x]为x的整数部分#include#include#include#includeusing namespace std;const double e=exp(1);// e的1次方int main(){ double a...
阅读全文
摘要:递推思路:第n位取值有①E或F②O对于① 第n-1位任意 取法有arr[b-1]种 那么n位符合条件的组合有 2*f[n-1];对于② 第n-1位只能取E F 而第n-2位任意 取法同上思路即f[n-2] 那么n位符合条件的组合有2*f[n-2];综上:arr[n]=arr[n-1]*2+arr[n...
阅读全文
摘要:递推思路:手算推导 arr[1]=3, arr[2]=6, arr[3]=6, arr[4]=18;此时推导arr[n]=?(n>3) 考虑到第n-1位取值有 ①与第一位相同②与第一位不同;容易理解的是 第n-1位与第一位不同(这样的取值方法共有arr[n-1]个) 那么第n位只有一种取值 即除了第...
阅读全文
摘要:思想和超级台阶的思路一致,n状态可以从n-1状态和n-2状态得来,所以可以用递推解决另,当n比较大时候可能超出int。#includeusing namespace std;int main(){ long long a[51]; a[1]=1; a[2]=...
阅读全文

浙公网安备 33010602011771号