题意: 给定n*m的棋盘(1
思路:m的范围只有1
状态表示:0代表此处留空,1代表此处被填满。01序列压缩成一个int型来表示一行的填放情况。(例如:状态为4,则代表100,即第一列填满,第二第列三空)
递推矩阵是长这样的:
边界条件:
其中,
t = 2^M
代表将前i-1行填满,且第i行放置了状态s时的总方案数。
代表上一行原本放置了状态s2的前提下,当前行放置骨...
分类:
其他好文 时间:
2014-12-07 12:38:12
阅读次数:
176
题目链接:HDU 5131 Little Zu Chongzhi's Triangles
题意:给出一些线段,在其中选出3根组成三角形,问用这些线段组成的所有三角形的最大面积是多少。
7
3 4 5 3 4 5 90
两个三角形是(3,3,4),(5,5,4)。
思路:N最大12,状态压缩,把所有可能组成的三角形存起来。A&B==0则说明A|B状态是有效的。
贪心也能过。。为什么?...
分类:
其他好文 时间:
2014-12-06 11:28:14
阅读次数:
170
题目:hdoj 5125 Little Zu Chongzhi's Triangles
题意:给出n个木棍的长度,然后问这些木棍所能组成三角形的最大面积。
分析:这个题目用状态压缩解,因为木棍的最大个数为12
我们枚举所有状态,用状态对应位的 0 和 1 表示这个木棍是否选择,然后如果某个状态选择的木棍是3的话,判断是否可以组成,可以的话dp【st】 = 三角形面积
然后大...
分类:
其他好文 时间:
2014-12-05 21:17:57
阅读次数:
159
题目链接
题意:用1*2的小矩形拼成n*m(n,m
解法:状态压缩,dfs求转移。当前一列的状态确定后,后一列必须用横向的矩形来填补前一列的空白格,所以前一列不为空时,这一列可以选择也为空让下一列来填补,或是本列来个纵向的矩形填补(如果有连续的两个空格的话)。
代码:/**********************************************...
分类:
其他好文 时间:
2014-12-04 17:59:41
阅读次数:
142
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1801分析:只会50的状态压缩……然后搜了下题解,发现是dp首先易得每行每列至多有2个棋子设f[i][j][k]表示前i行中有j列放了1个棋子,有k列放了2个棋子,那么就有m-j-k列没有...
分类:
其他好文 时间:
2014-12-03 00:17:02
阅读次数:
155
Tempter of the Bone II
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 98304/32768 K (Java/Others)
Total Submission(s): 1529 Accepted Submission(s): 407
Problem Description
The dog...
分类:
其他好文 时间:
2014-11-29 14:39:12
阅读次数:
209
Key Task
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1239 Accepted Submission(s): 495
Problem Description
The Czech Technical Un...
分类:
其他好文 时间:
2014-11-27 10:49:46
阅读次数:
256
Key Task
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1229 Accepted Submission(s): 493
Problem Description
The Czech Technical Un...
分类:
其他好文 时间:
2014-11-26 22:39:01
阅读次数:
223