动态规划类问题主要分为两大类: 1.求最优解(典型的背包问题) 2.计数(统计方案) 以上两类都存在递推性质。 第一类的递推称为最优子结构 -- 当前问题的最优解取决于子问题的最优解。 当前问题的方案数取决于子问题的方案数时,也可以用动态规划解决。 第二类例子: 机器人走方格(leetcode63. ...
分类:
其他好文 时间:
2020-07-06 09:13:38
阅读次数:
54
题意: 给出递推式 \(F\): \(F(0)=0,F(1)=1\) \(F(n)=3*F(n-1)+2*F(n-2)(n\geq2)\) 给出查询次数:\(Q\) 和第一次查询的数 \(N\),每次查询的答案为:\(A_i=F(N)\)。并且$N_i=N_\ xor\ A_^2$,最后要求输出:\ ...
分类:
其他好文 时间:
2020-07-05 23:15:58
阅读次数:
65
此题思想 根据初始点的位置,向上向右扩展出一个范围,然后进行递推即可。 #include<cstdio> #include<iostream> using namespace std; int main() { int i, a[10001][4], n, x, y, f = -1; cin >> ...
分类:
其他好文 时间:
2020-07-05 17:35:40
阅读次数:
54
CSDN同步 原题链接 前置知识: 欧拉筛,一些基本数论知识。 简要题意: 求 \(a^b \% m\). $1 \leq a \leq 109 , 1 \leq b \leq 10{2 \times 107} , 1 \leq m \leq 108$. 首先,看到这个数据范围你就发现你凉凉了。 算 ...
分类:
其他好文 时间:
2020-07-04 22:41:26
阅读次数:
103
加法可以压9位 乘法一般压4位,不压5位是因为会爆int 压8位的意思是: 将高精度整数转化成数组时,数组中的每个数存储8位。这样数组的长度会缩小到原来的1/8。 压8位的具体实现: 不压位的话,数组里每一个数存0~9。压8位就是每个数存0~99999999。这样数组长度会缩小到八分之一。 压位主要 ...
分类:
其他好文 时间:
2020-07-04 19:10:43
阅读次数:
67
华为5月中旬首次向上汽的量产车型EUNIQ系列供应电机控制器,引起汽车电子行业人士高度关注。华为提供的电机控制器,可以3%的高精度调整电机扭矩和输出控制。经过上汽MAXUS与华为的联合调教,EUNIQ系列纯电版车型0~50km/h加速成绩小于5秒。优异的表现来源于车规级MCU的性能以及华为在电机控制 ...
分类:
其他好文 时间:
2020-07-03 12:50:24
阅读次数:
95
思路 和牛棚清理很像,求每个喷水装置可以达到的矩形长度(记得提高精度),为图中的两个点,价值记录为1(需要一个),如果半径小于等于(m/2)为无效内容,然后反向建边,价值记录为0,跑一遍spfa即可。 附上代码一份 #include<bits/stdc++.h> using namespace st ...
分类:
其他好文 时间:
2020-07-02 21:33:49
阅读次数:
49
由于每次只能跳一阶或者两阶台阶,所以要到达每一阶台阶的方案数都是到达上一阶台阶的方案数 和到达上上阶台阶的方案数之和。 如果我们用dp[i]表示到达第i阶台阶的方案数,那么可以得到递推公式dp[i] = dp[i - 1] + dp[i - 2]; 这就是一个斐波那契数列,递推边界是dp[0] = ...
分类:
其他好文 时间:
2020-07-02 16:33:12
阅读次数:
47
高精度加法 // C = A + B, A >= 0, B >= 0 #include<iostream> #include<vector> using namespace std; vector<int > add(vector<int > &A, vector<int > &B) { vecto ...
传送门 以前博弈论都是靠找规律,这个题给我了新的思路,就是如果说博弈论里面的操作是对数字操作,那么可以采用递推的形式 先初始化$\sqrt(n)$的数据,然后有种杜教筛的思想,对于$n > N$时,才回去继续查找,而在求dp[n / j]时,继续查看,n / j 是否 < N 设dp[i], 如果d ...
分类:
其他好文 时间:
2020-07-01 11:03:07
阅读次数:
54