
状压dp
文章平均质量分 77
YaphetS_FC
不忘初心,方得始终。
展开
-
UVALive 6625
状压dp。 深搜能过,大神搜得过,反正我是各种姿势都试了就是过不了,参考了退役大神的代码。。 第一次写状压dp。。 首先题意,向格子里填数,每个格子里面的数大于等于右边的,大于下边的(如果有的话)。给你每行多少个数字,由此可以打出每列有多少个数字从左向右转移dp[i][s],i代表当前走到第几列,因为上下是严格递增的,因此可以用整数s表示一个整数集。当前面一个整数集大于后面时,并且两个整数集原创 2016-08-23 20:36:42 · 784 阅读 · 0 评论 -
Codeforces Round #385 (Div. 2) E
二分答案+状压DP。 状态转移写崩了,查了好久,对于每一个点是可选可不选的,我漏了一个不选的状态,wa了好久。 思路:重复的个数肯定是n和n-1,因此二分n,对于每一个n进行一次状压DP。在此之前先打一个f数组用于以后的状态转移。 #include #include #include #include #include #include using namespace std;原创 2016-12-18 12:10:41 · 392 阅读 · 0 评论