http://poj.org/problem?id=3254从这里学的 http://blog.csdn.net/accry/article/details/6607703状压dp的入门题。一片N×M的田地,有的地方可以种玉米,有的地方不可以。种玉米的区块不能相邻。种玉米的求总方案数,不种玉米也是一...
分类:
其他好文 时间:
2015-12-11 06:49:58
阅读次数:
200
// poj3254 状压dp入门
// dp[i][S]表示前i行第i行状态为S时放牧的情况
// S为十进制的二进制数形式如5为101表示第一列和第三列放牧的方法数
// 首先dp[0][S]合法的话就是1
// 状态转移方程为dp[i][S] = sigma(dp[i-1][V])(S与V是合法状态)
// 最后的结果就是dp[n][S](S为所有的合法状态)
//
// 刚开始十分傻x的...
分类:
其他好文 时间:
2015-04-14 21:41:16
阅读次数:
131
题意:
求h*w的矩形被1*2的小矩形覆盖的方案数。
分析:
状压dp入门,《挑战程序设计竞赛》上讲的很好,好几天才看懂。
代码:
#include
using namespace std;
__int64 ans[16][16];
int n,m;
__int64 dp[2][1<<16];
__int64 solve()
{
int i,j,used;
memset(dp,0...
分类:
其他好文 时间:
2015-02-16 19:42:21
阅读次数:
136
题意:
将n头牛和m个栏做匹配,求匹配方案数。
分析:
开始暴搜tle了,还是要用状压dp,dp[i][s]表示前i头牛匹配栏的状态为s时可行的方案数。
代码:
//poj 2441
//sep9
#include
using namespace std;
const int maxN=21;
int dp[2][1<<maxN];
int a[maxN][maxN];
int mai...
分类:
其他好文 时间:
2015-01-07 14:58:54
阅读次数:
134
Arrange the Bulls
Time Limit: 4000MS
Memory Limit: 65536K
Total Submissions: 3509
Accepted: 1344
Description
Farmer Johnson's Bulls love playing basketball very much....
分类:
其他好文 时间:
2014-10-20 15:18:13
阅读次数:
219
题目:http://poj.org/problem?id=3254
因为&运算写成&&--导致调试了快一个小时代的代码没有搞定
关于建图:
1、题目中是1表示可以放牧,0表示不可以放牧,但是建图的时候,可以放牧的位用0表示,不可以放牧的位用1表示。原因如下:
假设可以放牧的位用1表示,不可以放牧的位用0表示,那么假设当前行状态时1010 想要放置1001 ,&运算的结果...
分类:
其他好文 时间:
2014-08-05 11:10:19
阅读次数:
242