【题目链接】 http://poj.org/problem?id=2441

【题目大意】

  每个人有过个喜欢的篮球场地,但是一个场地只能给一个人,
  问所有人都有自己喜欢的场地的方案数。

【题解】

  状态S表示已经用了那些场地,顺序递推每个人满足需求的情况即可。

【代码】

#include <cstdio>
#include <cstring>
using namespace std;
const int N=25;
int n,m,u,x,dp[2][1<<20],a[N][N];
int main(){
while(~scanf("%d%d",&n,&m)){
memset(a,0,sizeof(a));
memset(dp,0,sizeof(dp));
dp[0][0]=1;
for(int i=1;i<=n;i++){
scanf("%d",&u);
while(u--)scanf("%d",&x),a[i][x]=1;
}
for(int i=1;i<=n;i++){
for(int j=0;j<(1<<m);j++)if(dp[1-i&1][j]){
for(int k=1;k<=m;k++){
if(a[i][k]&&j!=(j|1<<(k-1)))dp[i&1][j|1<<(k-1)]+=dp[1-i&1][j];
}
}memset(dp[1-i&1],0,sizeof(dp[1-i&1]));
}int ans=0;
for(int i=1;i<(1<<m);i++)ans+=dp[n&1][i];
printf("%d\n",ans);
}return 0;
}

最新文章

  1. 0103MySQL中的B-tree索引 USINGWHERE和USING INDEX同时出现
  2. GO语言面向对象
  3. 使用 CSS &amp; jQuery 制作一款漂亮的多彩时钟
  4. traceroute
  5. CUDA入门1
  6. ArcGIS API for Silverlight 之ElementLayer使用及TextSymbol的模板使用
  7. HttpWebRequest 上传图片
  8. 从打车软件你能想到多少?盈利模式?商机?大数据?移动互联网蛋糕?生活方式改变withApp?
  9. 劫持Disucz系列密码
  10. [Openfire]使用WebSocket建立Openfire的客户端
  11. 一个10年Java程序员的年终总结,献给还在迷茫中的你
  12. XML解析之sax解析案例(一)读取contact.xml文件,完整输出文档内容
  13. 《ASP.NET Core In Action》读书笔记系列四 创建ASP.NET Core 应用步骤及相应CLI命令
  14. day 2 - 逻辑运算
  15. linux 用户空间获得纳秒级时间ns【转】
  16. nodejs -- fs模块 ---&gt; readFile 函数 1) fs.readFile(filename, &quot;binary&quot;, function(error, file) 2) response.write(file, &quot;binary&quot;);
  17. 黄聪:FFmpeg 使用指南
  18. C++11 constexpr使用
  19. strace用法说明
  20. webView内部跳转后 返回不行了

热门文章

  1. ASP.NET Core 认证与授权[2]:Cookie认证 (笔记)
  2. Python全栈工程师 (exercises)
  3. 201621123033 《Java程序设计》第9周学习总结
  4. 【转】PHP的执行原理/执行流程
  5. role management
  6. MPS添加管理设备实例NS的过程
  7. POJ2417 Discrete Logging | A,C互质的bsgs算法
  8. Oracle SQL 疑难解析读书笔记(一 基础)
  9. WPF - 样式 (转)
  10. GitHub上README写法暨markdown语法解读