pat 食物链(状态压缩求哈密顿回路)
状态压缩求哈密顿回路
#include<bits/stdc++.h>
using namespace std;
bool dp[23][1<<21];
char s[22][22];
bool vis[35];
int ans[25];
int n,f=0;
bool dfs(int now,int cur,int cnt)
{ans[cnt]=now;if(cnt==n){if(s[now][1]=='W'||s[1][now]=='L'){f=1;for(int i=1;i<n;i++){cout<<ans[i]<<' ';}cout<<ans[n]<<endl;return 1;}return 0;}int x=1;for(int i=2;i<=n;i++){x<<=1;int st=cur|x;if(!vis[i]&&(s[now][i]=='W'||s[i][now]=='L')&&!dp[i][st]){vis[i]=1;if(dfs(i,st,cnt+1))return 1;vis[i]=0;}dp[i][st]=1;}return 0;
}
int main()
{//int n;cin>>n;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++)cin>>s[i][j];}vis[1]=1;dfs(1,1,1);if(f==0)cout<<"No Solution"<<endl;
}
pat 食物链(状态压缩求哈密顿回路)相关推荐
- AcWing 91. 最短Hamilton路径(状态压缩DP+哈密顿回路)
题目链接 https://www.acwing.com/problem/content/description/93/ 思路 这道题看似像一个最短路,但是并不是,因为我们要求对于每一个点都经过,但是最 ...
- 回路计数蓝桥杯(状态压缩dp)
第一次碰到状态压缩求方法数,记录一下 回路计数 题目描述 蓝桥学院由 2121 栋教学楼组成,教学楼编号 11 到 2121.对于两栋教学楼 aa 和 bb,当 aa 和 bb ...
- HDU4026 Unlock the Cell Phone [状态压缩DP]
一开始看范围特别小就写搜索了...结果自己随便出了个4*4就过不了了.. 其实就是状态压缩DP,求哈密顿回路要多少条,只是要注意判断两点是否可以划线就可以了. #include <stdio.h ...
- 树上启动式合并问题 ---- D. Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths [状态压缩+树上启发式合并]
题目链接 题目大意: 一棵根为1 的树,每条边上有一个字符(a−va−va−v共22种). 一条简单路径被称为Dokhtar−kosh当且仅当路径上的字符经过重新排序后可以变成一个回文串. 求每个子树 ...
- 0x56. 动态规划 - 状态压缩DP(习题详解 × 7)
目录 Problem A. 最短Hamilton路径 ProblemB. 蒙德里安的梦想 Problem C. Corn Fields Problem D. 小国王 Problem E. 炮兵阵地 P ...
- HDU 4352 数位dp + LIS(nlogn) + 状态压缩
#define xhxj (Xin Hang senior sister(学姐)) If you do not know xhxj, then carefully reading the entir ...
- BZOJ1688|二进制枚举子集| 状态压缩DP
Disease Manangement 疾病管理 Description Alas! A set of D (1 <= D <= 15) diseases (numbered 1..D) ...
- POJ2688状态压缩(可以+DFS剪枝)
题意: 给你一个n*m的格子,然后给你一个起点,让你遍历所有的垃圾,就是终点不唯一,问你最小路径是多少? 思路: 水题,方法比较多,最省事的就是直接就一个BFS状态压缩暴搜就行 ...
- hdu4909 状态压缩(偶数字符子串)
题意: 给你一个字符串,里面最多有一个'?','?'可以表示'a' - 'z',也可以什么都不表 示,这里要明确,什么都不表示不是不存在的意思,当aa什么都不表示的时候aa 也不等于aa? ...
最新文章
- 你知道吗?Workspot属于二级VDI平台?
- JVM学习笔记之四:分代垃圾回收
- PMBOK项目管理PMI主义\IPMA概述
- 使用MCI方法操作声音文件
- iOS 打包上传AppStore
- java8 list转map
- Android RecyclerView布局动画
- 【SemiDrive源码分析】【驱动BringUp】40 - Touch Panel 触摸屏调试 (Android侧)
- 数据分析实践——如何搭建数据指标体系(抖音为例)
- 数据库中违反外键约束的情况
- Allegro如何更改铜皮的网络操作指导
- REST Assured 22 - JSON
- Linux多线程服务端编程学习(四)finger服务的实现
- 三子棋小游戏(超详细)
- BI工具是什么,有什么用,怎么用?
- 极品工控插件 iocomp 中 iXYPlotX1配置全面解析
- Echarts地图china.js
- .NET 控件集 ComponentOne 2018V2正式发布,提供轻量级的 .NET BI 仪表板
- Oracle - UTL_FILE包之详解
- “PS”制作“logo”
热门文章
- tf.nn.embedding_lookup()的用法
- https://blog.csdn.net/blmoistawinde/article/details/84329103
- 全文翻译(全文合集):TVM: An Automated End-to-End Optimizing Compiler for Deep Learning
- Nucleus 实时操作系统中断(上)
- 一种新的高级抖动分离解析方法
- 2021年大数据ELK(十九):使用FileBeat采集Kafka日志到Elasticsearch
- Django 上传图片和Admin站点5.2
- baseUrl must end in /: http://v.juhe.cn/toutiao/index
- android 创建 file 文件,文本 并写入内容
- thymeleaf+layui 展示table 报500