zoj 3471 Most Powerful(状压dp+Tsp问题+连续性问题)
2024-08-31 11:11:37
上来直接一波敲键盘,直接套Tsp问题的代码
然后WA
发现貌似这道题没有连续性。
Tsp问题是一条路径,一个点到另一个点,多了一个限制,所以就需要加多一维
而这道题没有限制,也就是说那一维不需要加,我加了还WA
然后要搞清楚状态,在纸上可以写,写清楚了再敲代码
这道题一开始都是存在,初始状态是0000……所以就用0表示存在,1表示不存在
#include<cstdio>
#include<cstring>
#include<algorithm>
#define REP(i, a, b) for(int i = (a); i < (b); i++)
#define _for(i, a, b) for(int i = (a); i <= (b); i++)
using namespace std;
const int MAXN = 15;
int g[MAXN][MAXN], dp[1050], n;
int main()
{
while(~scanf("%d", &n) && n)
{
REP(i, 0, n)
REP(j, 0, n)
scanf("%d", &g[i][j]);
memset(dp, 0, sizeof(dp));
REP(S, 0, 1 << n) //i碰j
REP(i, 0, n) if(!(S & (1 << i))) //还存在是0
REP(j, 0, n) if(S & (1 << j)) //消失是1
dp[S] = max(dp[S], dp[S^(1<<j)] + g[i][j]);
int ans = 0, t = (1 << n) - 1;
REP(i, 0, n)
ans = max(ans, dp[t ^ (1 << i)]);
printf("%d\n", ans);
}
return 0;
}
最新文章
- STM32之DAC君
- iOS------苹果设备处理器指令集(iPhone初代到iPhone5s)
- Support for Xpm library: no问题
- MFC实现Gif动画制作工具
- JavaScript根据CSS的Media Queries来判断浏览设备的方法
- UVaLive 7500 Boxes and Balls (数学)
- thinkphp框架dump友好调试输出函数
- hql中or的用法(代替union)
- 对ORA-01795: 列表中的最大表达式数为 1000的处理(算法:计算数量及切割)
- iOS 之 线程和进程
- Samba远程代码执行漏洞(CVE-2017-7494)本地复现
- padding-使用必记
- 【笔记】快应用QuickApp(hap) -- 构建一个微博应用
- 【STM32H7教程】第9章 STM32H7重要知识点数据类型,变量和堆栈
- HTTP笔记01-http相关的基础知识
- SAS LOGISTIC 逻辑回归中加(EVENT=&#39;1&#39;)和不加(EVENT=&#39;1&#39;)区别
- Model1与Model2
- VS2008--VS2013 各种版本官方下载地址
- PHP 获取当前所在的类名、方法名等
- vue--引入富文本编辑器
热门文章
- nginx反向代理时保持长连接
- Servlet过滤器和监听器知识总结
- oracle schema彻底理解
- 关于Windows通过远程桌面訪问Ubuntu
- Hadoop使用Java进行文件修改删除操作
- ios网络学习------3 用非代理方法实现异步post请求
- 2016.03.10,英语,《Vocabulary Builder》Unit 05
- 2015.03.12,外语,读书笔记-《Word Power Made Easy》 10 “如何讨论交谈习惯”学习笔记 SESSION 25
- excel如何将一列按奇偶数分成两列
- [POJ 1316] 树上的询问