博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Light OJ 1406 Assassin`s Creed 状态压缩DP+强连通缩点+最小路径覆盖
阅读量:6712 次
发布时间:2019-06-25

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

题目来源:

题意:有向图 派出最少的人经过全部的城市 而且每一个人不能走别人走过的地方

思路:最少的的人能够走全然图 明显是最小路径覆盖问题 这里可能有环 所以要缩点 可是看例子又发现 一个强连通分量可能要拆分 n最大才15 所以就状态压缩 

将全图分成一个个子状态 每一个子状态缩点 求最小路径覆盖 这样就攻克了一个强连通分量拆分的问题 最后状态压缩DP求解最优值

#include 
#include
#include
#include
#include
using namespace std;const int maxn = 16;vector
G[maxn], G2[maxn];int dp[1<
S;int a[maxn][maxn];int b[maxn][maxn];void dfs(int u, int x){ pre[u] = low[u] = ++clock; S.push(u); for(int i = 0; i < G[u].size(); i++) { int v = G[u][i]; if(!(x&(1<

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

你可能感兴趣的文章
python开发工具
查看>>
Home Assistant系列 -- 自动语音播报天气
查看>>
Hyberledger-Fabric 1.00 RPC学习(1)
查看>>
SDNU 1450.报时助手
查看>>
BZOJ 4144 Dijkstra+Kruskal+倍增LCA
查看>>
阻塞与非阻塞,同步与异步
查看>>
HTML段落自动换行的样式设置
查看>>
Android实现左右滑动指引效果
查看>>
html里frame导航框架实现方法
查看>>
shell编程系列5--数学运算
查看>>
在 UWP 应用中创建、使用、调试 App Service (应用服务)
查看>>
Active MQ C#实现
查看>>
C#实现秒表程序
查看>>
cJSON 使用笔记
查看>>
CF1163E Magical Permutation
查看>>
BroadcastReceiver
查看>>
redis备份实操
查看>>
重要更新-Word 2003查找替换最后一个实例的第四种方法
查看>>
实现大屏幕全国监控各地流量和负载质量
查看>>
高性能HTTP加速器Varnish(安装配置篇)
查看>>