随笔分类 - 动态规划-其他
摘要:经典的双人非对称零和博弈,对于Alice来说,肯定取后继状态中得分最高的一个,对于Bob来说,肯定取得分最低的一个,记忆化搜索即可 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 const int
阅读全文
摘要:题意:求一个有向图上的最长路(每个强连通分量的点不超过5个) 首先对强连通分量缩点,暴力预处理出len[k][i][j]表示第k个强连通分量里的第i个点和第j个点之间的最长路径,设状态(k,i,f)表示在第k个强连通分量的第i个点,f表示是否已经在内部发生了转移(每个强连通分量内部只允许转移一次),
阅读全文
摘要:给你两个长度不超过30的字符串序列,让你找到一个最短的字符串,使得给定的两个字符串均是它的子序列(不一定连续),求出最短长度以及符合条件的解的个数。 定义状态(a,b,c)为当前字符串长度为a,其中包含了第一个字符串的前b个字母和第二个字符串的前c个字母组成的子序列的状态 初始状态为(0,0,0),
阅读全文
摘要:题目链接 题目大意:给你n个规格一样的气球和一栋大楼的高度,求最少试验几次能测出气球最高在哪一层掉下来不破。 如果这道题想用(dp[i][j]=用i个气球测出j高度的楼需要几次)来作为状态的话,那你就输了,因为楼的高度太大了。 正确的做法是用(dp[i][j]=用i个气球测j次最高能测出多高的楼)来
阅读全文

浙公网安备 33010602011771号