随笔分类 - 递推
摘要:## . 分形之城 参考题解 一、题目描述 城市的规划在城市建设中是个大问题。 不幸的是,很多城市在开始建设的时候并没有很好的规划,城市规模扩大之后规划不合理的问题就开始显现。 而这座名为 的城市设想了这样的一个规划方案,如下图所示: 当城区规模扩大之后,
阅读全文
摘要: . 费解的开关 一、题目描述 你玩过 拉灯 游戏吗? 盏灯排成一个 的方形。 每一个灯都有一个开关,游戏者可以改变它的状态。 每一步,游戏者可以改变某一个灯的状态。 游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应
阅读全文
摘要:题目传送门 #include <bits/stdc++.h> using namespace std; const int N = 25; typedef long long LL; LL f[N][N][N]; LL w(LL a, LL b, LL c) { //注意判断的顺序,防止数组下标越界
阅读全文
摘要:题目传送门 一、深度优先搜索 #include <bits/stdc++.h> using namespace std; int n; //毫不意外,只通过了5个测试点,TLE了15个点~ int dfs(int x) { //1就没法继续分了,同时,由于题目说:原数列不做任何修改就直接统计为一种合
阅读全文
摘要:题目传送门 一、递推+高精度 #include <bits/stdc++.h> using namespace std; const int N = 5010; /** * 功能:高精度加法模板 * @param A * @param B * @return */ vector<int> add(v
阅读全文
摘要:题目传送门 总结 1、递推的初始条件 if (j == 0 || j == i) a[i][j] = 1; 2、递推式 a[i][j] = a[i - 1][j - 1] + a[i - 1][j]; #include <bits/stdc++.h> using namespace std; con
阅读全文
摘要:题目传送门 一、贪心法 题目里给的样例是,可以选择一个区间进行“填坑”操作;我们的贪心策略是: 若,计数器; 贪心证明 假设现在有一个坑,但旁边又有一个坑。你肯定会选择把两个同时填充,都减;那么小的坑肯定会
阅读全文
摘要:题目传递门 一、递推思路: 以中间某个通过状态为样本进行分析,比如我们现在面对第种菜,设是前种菜的所有点菜方法,但仔细一想,这样不行,为什么呢?因为只考虑了菜,没考虑钱!不考虑钱的点菜是没有灵魂的~ 所以前种菜的点菜方法,是受钱数制约的,就是,还有另一个钱数的维度。所以
阅读全文
摘要:题目传递门 一、深搜 别的也不会,一个深搜走天下!深搜我们主要关心的是下一步噢~ 怎么个深搜法呢?我们模拟一下,有一个装个顺序号小球的队列,一个个准备放到一个栈里。一共几下面几种场景: 1、队列为空,栈为空。 这种场景的下一步就只能是“游戏终止”,而“游戏终止”时我们应该方案数+1。 2、队列为空,
阅读全文
摘要:题目传递门 一、深搜尝试 上来简单一看,无脑暴搜开始! 注意 //马所在的位置 ctrl[x][y] = 1; ctrl[x - 1][y - 2] = 1; ctrl[x - 2][y - 1] = 1; ctrl[x + 1][y + 2] = 1; ctrl[x + 2][y + 1] = 1
阅读全文
摘要:题目传递门 解题思路: 这道题大神们都不屑一顾,我却认为这是一道非常好的试题,可以让孩子们锻炼的东西太多了,太有用了。我试着推导一下,给不清楚的同学解惑。 1、假设第天吃完(就是一个猜想的数字,和答案无关,也可以设成第天吃完,太小孩子不好理解),就是第天早上有个桃子,设$
阅读全文