DP
文章平均质量分 60
zz_ylolita
这个作者很懒,什么都没留下…
展开
-
bzoj1801 AHOI2009 chess
动态规划计数问题每行每列最多两个炮以每一行划分状态bzoj上不删掉system("pause");就无限RE #include #include #include #include #include #include using namespace std;#define P 9999973long long f[105][105][105];int n,m;l原创 2017-08-13 16:25:00 · 350 阅读 · 0 评论 -
poj2533 LIS裸题 O(nlogn)
/*O(nlogn) LISd[i]表示使得f[i]为i的最小的a[i]!!! d[]的初始值为INFd[]单调递增证明:反证,假设d[]不单增,与定义矛盾二分查找d[]中不大于a[i]的最大元素,返回下标poj 2533*/#include <iostream>#include <cstdio>#include <cstdlib>#in...原创 2018-07-18 16:58:49 · 285 阅读 · 0 评论 -
hdu4418 Time Travel 概率DP+高斯消元
可以先用BFS判断每个点是否可以到达,在BFS中使用队列和vis[],但是vis[]只用标记一次,并且即使点出队,标记也不要清除,因为如果一个点的vis = 1,那么它要么在队列里,当前不用入队,要么已经出队了,那么这个时候它能影响到的点已经被更新了,不用再入队一次。(和DFS同理)设E[i]表示从i走到终点y的期望,那么E[y] = 0来回折返的处理:为了将走动变成只有一个方向,将数轴翻...原创 2018-08-10 11:21:57 · 452 阅读 · 2 评论 -
hdu2167 状态压缩DP入门题
照猫画虎写了道入门题。。讲道理这东西我不应该现在才来学TAT//状态压缩DP入门题//九宫格的相邻限制条件//N*N 3<=N<=15/*dp[i][j]表示前i行,最后一行状态为j时得到的最大分数和对于一行j的所有可能可以用DFS弄出来,在同行搜索的时候只要保证行不相邻。在判断合法状态转移的时候,判断本身、左移和右移即可。dp[i][j] = max{dp[i-1...原创 2019-02-03 22:05:00 · 243 阅读 · 0 评论