博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 4049 Tourism Planning 状态压缩dp
阅读量:5043 次
发布时间:2019-06-12

本文共 1048 字,大约阅读时间需要 3 分钟。

 

   

【题意】 一群人 去n个城市旅游  每个城市有一个消费cost,每个人的cost 都相同。每个人i对城市j都有一个喜爱的值inter[i][j]。他们的路线及起点终点都已经确定。每一个人都有权中途离开队伍,或者干脆第一座城市就不去,但是一旦离开就不可以再回来. 一群人呆在一起 兴趣可以增加 增加的值为 两两的b值之和。 求可以获得的(inter-cost) 的最大值 若其不大于0 就输出 stay home

【思路】 二进制state 第i位为1 代表第i个人在队伍里 ,到第i个城市的时候 队伍里的人的状态为state

                  dp[i][state]=   max(dp[i-1][j]+sum(i,state));  ( ( state&j)==state )     // 在第i-1 个城市时 状态为j  即state 里的人都在  没在state 里的人也可能在

1 #include
2 #include
3 #include
4 #include
5 #include
6 7 #define maxx 1<<11 8 using namespace std; 9 int m,n,dp[11][maxx],inter[11][11],b[11][11],cost[11];10 bool vis[11];11 12 int sum(int k,int state)// 第k座城市 状态为state时13 {14 memset(vis,false,sizeof(vis));15 for(int i=0;i
ans)62 ans=dp[m-1][i];63 return ans;64 }65 66 67 int main()68 {69 while(~scanf("%d%d",&n,&m))70 {71 if(n==0&&m==0)72 break;73 for(int i=0;i
0)84 printf("%d\n",p);85 else printf("STAY HOME\n");86 }87 return 0;88 }

 

转载于:https://www.cnblogs.com/assult/p/3741467.html

你可能感兴趣的文章
【读书笔记】《HTTP权威指南》:Web Hosting
查看>>
Inoodb 存储引擎
查看>>
数据结构之查找算法总结笔记
查看>>
Linux内核OOM机制的详细分析
查看>>
Android TextView加上阴影效果
查看>>
Requests库的基本使用
查看>>
C#:System.Array简单使用
查看>>
C#inSSIDer强大的wifi无线热点信号扫描器源码
查看>>
「Foundation」集合
查看>>
算法时间复杂度
查看>>
二叉树的遍历 - 数据结构和算法46
查看>>
类模板 - C++快速入门45
查看>>
centos7 搭建vsftp服务器
查看>>
RijndaelManaged 加密
查看>>
Android 音量调节
查看>>
HTML&CSS基础学习笔记1.28-给网页添加一个css样式
查看>>
windows上面链接使用linux上面的docker daemon
查看>>
Redis事务
查看>>
Web框架和Django基础
查看>>
python中的逻辑操作符
查看>>