摘要: 也可以直接用等比树列求和公式,乘上逆元 分治: 1 #include <iostream> 2 #include <algorithm> 3 #include <cstring> 4 using namespace std; 5 6 using ll = long long; 7 const int 阅读全文
posted @ 2020-04-12 18:56 ACWink 阅读(777) 评论(0) 推荐(0) 编辑
摘要: 也可以直接用等比树列求和公式,乘上逆元 分治: 1 #include 2 #include 3 #include 4 using namespace std; 5 6 using ll = long lo... 阅读全文
posted @ 2020-04-12 18:56 ACWink 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 递归的思想是:将大的问题转化为小问题。如:从1-n这n个数中选任意的数的,输出所有可能的方案数。递归解决问题: 1 #include <vector> 2 #include <iostream> 3 using namespace std; 4 int n; 5 vector<int> chosen 阅读全文
posted @ 2020-04-12 16:19 ACWink 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 递归的思想是:将大的问题转化为小问题。 如: 从1-n这n个数中选任意的数的,输出所有可能的方案数。 递归解决问题: 1 #include 2 #include 3 using namespace std; 4 int n; 5... 阅读全文
posted @ 2020-04-12 16:19 ACWink 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 题目分析:本题的运用差分思想,所以呢证明差分序列的前缀和是原序列前缀和的逆运算::a[1],a[2],...a[n]; b[i] = a[i] - a[i-1];b[1] = a[1];a[i] = b[1]+b[2]+...+b[i];a[i] = b[1] + b[2] + b[3] +...+ 阅读全文
posted @ 2020-04-12 15:54 ACWink 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 题目分析: 本题的运用差分思想,所以呢 证明差分序列的前缀和是原序列 前缀和的逆运算:: a[1],a[2],...a[n]; b[i] = a[i] - a[i-1];b[1] = a[1]; a[i] = b[1]+b[2]+...+b[i];... 阅读全文
posted @ 2020-04-12 15:54 ACWink 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 枚举正方行边长为r的 1 #include <iostream> 2 #include <algorithm> 3 #include <cstring> 4 using namespace std; 5 6 const int N = 5e3 + 5; 7 int g[N][N]; 8 int ma 阅读全文
posted @ 2020-04-12 15:28 ACWink 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 枚举正方行边长为r的 1 #include 2 #include 3 #include 4 using namespace std; 5 6 const int N = 5e3 + 5; 7 int g[N][N]; 8... 阅读全文
posted @ 2020-04-12 15:28 ACWink 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 题目描述 汉诺塔问题,条件如下: 1、这里有A、B、C和D四座塔。 2、这里有n个圆盘,n的数量是恒定的。 3、每个圆盘的尺寸都不相同。 4、所有的圆盘在开始时都堆叠在塔A上,且圆盘尺寸从塔顶到塔底逐渐增大。 5、我们需要将所有的圆盘都从塔A转移到塔D上。 6、每次可以移动一个圆盘,当塔为空塔或者塔 阅读全文
posted @ 2020-04-12 15:07 ACWink 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 题目描述 汉诺塔问题,条件如下: 1、这里有A、B、C和D四座塔。 2、这里有n个圆盘,n的数量是恒定的。 3、每个圆盘的尺寸都不相同。 4、所有的圆盘在开始时都堆叠在塔A上,且圆盘尺寸从塔顶到塔底逐渐增大。 5、我们需要将所有的圆盘都从塔A转移... 阅读全文
posted @ 2020-04-12 15:07 ACWink 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 由题可得: 1.每个等最多点一次 2.当第一行固定,最多由一种结果,每一行的状态,要由下一行转换过来。所以枚举第一行的状态,来计算答案 #include #include #include using namespace std;char g[... 阅读全文
posted @ 2020-04-12 12:13 ACWink 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 由题可得: 1.每个等最多点一次 2.当第一行固定,最多由一种结果,每一行的状态,要由下一行转换过来。所以枚举第一行的状态,来计算答案 #include <iostream> #include <algorithm> #include <cstring> using namespace std; c 阅读全文
posted @ 2020-04-12 12:13 ACWink 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 运用二进制状态压缩,模板题 1 #include <iostream> 2 #include <algorithm> 3 #include <cstring> 4 using namespace std; 5 6 int f[1 << 20][20], weight[20][20], n;//f[i 阅读全文
posted @ 2020-04-12 10:21 ACWink 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 运用二进制状态压缩,模板题 1 #include 2 #include 3 #include 4 using namespace std; 5 6 int f[1 > j & 1)//如果这个点是1那么,状态是成立的 12 ... 阅读全文
posted @ 2020-04-12 10:21 ACWink 阅读(46) 评论(0) 推荐(0) 编辑