HDU 4068
http://acm.hdu.edu.cn/showproblem.php?pid=4068
暴力枚举两个全排列,犯了若干错误,以此为鉴
#include <iostream>
#include <cstdio>
#include <cstring>
#include <map>
using namespace std ;
int n,f,m[],vis[],vis2[],temp[] ;
string str[],ans[],s[][],res[] ;
int OK()
{
int i,j,flag ;
i=j= ;
while(i<n && j<n)
{
flag= ;
for(int k= ;k<m[temp[i]] ;k++)
{
if(s[temp[i]][k]==res[j])
{
flag= ;
break ;
}
}
if(flag)j++ ;
else i++ ;
}
if(i==n)return ;
return ;
}
int ff ;
int dfs2(int cur)
{
if(cur==n)
{
if(!OK()){
ff= ;
return ;
}
}
for(int i= ;i<n && ff ;i++)
{
if(!vis2[i])
{
vis2[i]= ;
temp[cur]=i ;
dfs2(cur+) ;
vis2[i]= ;
}
}
if(ff)return ;
return ;
}
void dfs(int cur)
{
if(f)
return ;
if(cur==n)
{
ff= ;
memset(vis2,,sizeof(vis2)) ;
if(dfs2())
{
f= ;
for(int i= ;i<n ;i++)
ans[i]=res[i] ;
}
return ;
}
for(int i= ;i<n ;i++)
{
if(!vis[i])
{
vis[i]= ;
res[cur]=str[i] ;
dfs(cur+) ;
vis[i]= ;
}
}
} int main()
{
int t ;
scanf("%d",&t) ;
for(int cas= ;cas<=t ;cas++)
{
scanf("%d",&n) ;
for(int i= ;i<n ;i++)
cin >> str[i] ;
for(int i= ;i<n ;i++)
{
scanf("%d",&m[i]) ;
for(int j= ;j<m[i] ;j++)
{
cin >> s[i][j] ;
}
}
sort(str,str+n) ;
f= ;
memset(vis,,sizeof(vis)) ;
dfs() ;
printf("Case %d: ",cas) ;
if(f)
{
puts("Yes") ;
for(int i= ;i<n ;i++)
{
if(i)
{
putchar(' ') ;
}
cout << ans[i] ;
}
putchar('\n') ;
}
else
puts("No") ;
}
return ;
}
HDU 4068的更多相关文章
- hdu 4068 I-number【大数】
题目: http://acm.hdu.edu.cn/showproblem.php?pid=4608 http://acm.hust.edu.cn/vjudge/contest/view.action ...
- hdu 4068 福州赛区网络赛H 排列 ***
拍的太慢了,很不满意 排完序之后,枚举自己和对手状态,若被击败,则再枚举自己下一个策略,直到可以击败对手所有的策略 #include<cstdio> #include<iostrea ...
- hdu 4068 SanguoSHA
搜索下就可以了…… 代码如下: #include<iostream> #include<cstring> #include<cstdio> #include< ...
- hdu 4068 I-number
#include<stdio.h> #include<string.h> ]; int al; int mysum() //求各位和 { ; al=strlen(a); ; i ...
- [置顶] 2013_CSUST暑假训练总结
2013-7-19 shu 新生训练赛:母函数[转换成了背包做的] shuacm 题目:http://acm.hdu.edu.cn/diy/contest_show.php?cid=20083总结:h ...
- HDOJ 2111. Saving HDU 贪心 结构体排序
Saving HDU Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- 【HDU 3037】Saving Beans Lucas定理模板
http://acm.hdu.edu.cn/showproblem.php?pid=3037 Lucas定理模板. 现在才写,noip滚粗前兆QAQ #include<cstdio> #i ...
- hdu 4859 海岸线 Bestcoder Round 1
http://acm.hdu.edu.cn/showproblem.php?pid=4859 题目大意: 在一个矩形周围都是海,这个矩形中有陆地,深海和浅海.浅海是可以填成陆地的. 求最多有多少条方格 ...
- HDU 4569 Special equations(取模)
Special equations Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u S ...
随机推荐
- 解决maven的依赖总是无法下载完成
有时候在eclipse里面刚刚导进一个maven项目,但是总是无法完整下载pom文件里面的依赖 主要有两个原因: 1,需要下载的依赖(jar包)需要开发人员给权限(远程仓库的下载权限),这个可以找开发 ...
- JDK eclipse selenium的安装以及环境变量的配置
未经允许,禁止转载!!! 未经允许,禁止转载!!! 首先下载安装JDK: 然后双击进行安装 选着第一个:开发工具!点击next 一定要记住:Install to: C:\Program Files\ ...
- (5)调度器(scheduler)
继承关系 原理介绍 Cocos2d-x调度器为游戏提供定时事件和定时调用服务.所有Node对象都知道如何调度和取消调度事件,使用调度器有几个好处: 每当Node不再可见或已从场景中移除时,调度器会停止 ...
- php composer使用过程
1.安装composer curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/compos ...
- mysql索引之聚簇索引与非聚簇索引
1 数据结构及算法基础 1.1 索引的本质 官方定义:索引(Index)是帮助MySQL高效获取数据的数据结构 本质:索引是数据结构 查询是数据库的最主要功能之一.我们都希望查询速度能尽可能快,因此数 ...
- Python:数字的格式化输出
>>> 'The value is {:0,.2f}'.format(x) 'The value is 1,234.57' 需要将数字格式化后输出,并控制数字的位数.对齐.千位分隔符 ...
- mongodb的分片(2)
在上一片博客,详细说明了mongodb的分片搭建的详细过程:分片搭建 在这里会说一些分片的维护与操作! 在集群搭建完,我们使用了sh.status()查看分片之后的数据,如下: #连接的是mongos ...
- ubuntu18.04下挂载网络文件系统失败【学习笔记】
作者:庄泽彬(欢迎转载,请注明作者) PC: ubuntu18.04 说明: 之前ubuntu16.04下搭建的环境,开发板挂载网络文件系统是ok的,但是换到ubuntu18.04在启动的时候 ...
- (Matlab)GPU计算简介,及其与CPU计算性能的比较
1.GPU与CPU结构上的对比 2.GPU能加速我的应用程序吗? 3.GPU与CPU在计算效率上的对比 4.利用Matlab进行GPU计算的一般流程 5.GPU计算的硬件.软件配置 5.1 硬件及驱动 ...
- 使用 p4-graphs 命令将p4程序依赖关系图形化
位置:/home/wasdns/p4factory/targets/l2_switch/p4src 命令: cd /home/wasdns/p4factory/targets/l2_switch/p4 ...