博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 4114(状压dp)
阅读量:6897 次
发布时间:2019-06-27

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

题目链接:

思路:首先是floyd预处理出任意两点之间的最短距离。dp[state1][state2][u]表示在该状态state1(已经访问过的景点)、state2(手中有的景点的票)、目前所在的位置时所花费的时间的最小值,于是答案就是dp[(1<<k)-1][state][1]了(0<=state<(1<<n))。

1 #include
2 #include
3 #include
4 #include
5 #include
6 #include
7 using namespace std; 8 #define inf 1<<30 9 #define FILL(a,b) memset(a,b,sizeof(a))10 11 int dp[1<<9][1<<9][55];//访问过的+收集的票+当前顶点12 int pos[55],time[9],f_time[9],map[55][55];13 int Mask[55];14 int n,m,k,ans;15 16 void floyd()17 {18 for(int k=1; k<=n; k++)19 for(int i=1; i<=n; i++)20 for(int j=1; j<=n; j++)21 if(map[i][k]!=inf&&map[k][j]!=inf&&map[i][k]+map[k][j]
View Code

 

 

转载地址:http://jzddl.baihongyu.com/

你可能感兴趣的文章
【Static Program Analysis - Chapter 3】Type Analysis
查看>>
类的继承关系,多态的体现,我的觉得题目还是有点欠缺
查看>>
微服务(Microservices)—Martin Fowler【翻译】
查看>>
新浪微博客户端(58)-处理点击微博内容中的关键字
查看>>
文件资源Android项目的工程结构
查看>>
Mockito 库、powermock扩展
查看>>
各版本JDK1.5-1.8新特性
查看>>
京东无界零售带来机遇,家电专卖店拉动实体经济,大学生的致富经
查看>>
中国物流能送到四海八荒,菜鸟年度排行榜告诉你都去了哪些地方
查看>>
从业界良心到疲态尽显 Netflix到底中了什么降头?
查看>>
OpenStack消亡?在企业落地为什么越来越难
查看>>
GitHub因Memcached漏洞遭遇DDoS攻击,专家称攻击会持续发生!
查看>>
湖南郴州与新疆托克逊特色年货节开幕
查看>>
快手音乐人计划:音乐人可以靠作品赚到真金白银
查看>>
使用Python一年多了,总结八个好用的Python爬虫技巧
查看>>
无人船成下一个全球研发热点,参与行业标准的「云洲智能」要做海洋上的&quot;SpaceX&quot;...
查看>>
13种数据分析思维
查看>>
3分钟搞掂Set集合
查看>>
如果再有人问你分布式 ID,这篇文章丢给他
查看>>
90% New Grads 都懵逼的面试轮次,这些应对“骚操作”请收好
查看>>