HRBUST1213 单词接龙 2017-03-06 15:53 67人阅读 评论(0) 收藏
对于每组测试数据,第一行为一个单独的整数n (n<=20)表示单词数,以下n 行每行有一个单词,输入的最后一行为一个单个字符,表示“龙”开头的字母。你可以假定以此字母开头的“龙”一定存在.
at
touch
cheat
choose
tact
a
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <queue>
#include <stack>
#include <string>
#include <set>
#include <map>
using namespace std; #define inf 0x3f3f3f3f int edge[25][25];
char s[25][10005];
int val[25];
int vis[25];
int mx;
int n; void dfs(int num,int len)
{
mx=max(mx,len);
for(int i=0; i<n; i++)
{
if(vis[i]<2&&edge[num][i]!=inf)
{
vis[i]++;
dfs(i,len+val[i]-edge[num][i]);
vis[i]--;
}
}
} int main()
{ while(~scanf("%d",&n))
{
for(int i=0; i<=n; i++)
scanf("%s",&s[i]);
for(int i=0; i<n; i++)
{
val[i]=strlen(s[i]);
}
memset(edge,inf,sizeof edge);
memset(vis,0,sizeof vis);
for(int i=0; i<n; i++)
{
if(s[i][0]==s[n][0])
edge[n][i]=0;
}
for(int i=0; i<n; i++)
{ for(int j=0; j<n; j++)
{
int a=strlen(s[i]);
int b=strlen(s[j]);
int l=1;
int r=0;
while(l<a)
{
r=0;
int fla=1;
if(s[i][l]==s[j][r])
{
if(l+b<a)
{
l++;
continue;
} for(; l+r<a; r++)
{
if(s[i][l+r]!=s[j][r])
{
fla=0;
}
}
if(fla==1)
edge[i][j]=min(edge[i][j],r);
} l++;
} } }
for(int i=0; i<n; i++)
{
if(s[i][0]==s[n][0])
edge[n][i]=0;
} /* for(int i=0; i<=n; i++)
{
for(int j=0; j<=n; j++)
{
printf("%d ",edge[i][j]);
}
printf("\n");
}*/
mx=0;
dfs(n,0);
printf("%d\n",mx);
} return 0;
}
HRBUST1213 单词接龙 2017-03-06 15:53 67人阅读 评论(0) 收藏的更多相关文章
- 搜索 基础 AC 2014-01-14 15:53 170人阅读 评论(0) 收藏
题目网址:http://haut.openjudge.cn/xiyoulianxi1/1/ 1:晶矿的个数 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 ...
- Basic 分类: POJ 2015-08-03 15:49 3人阅读 评论(0) 收藏
Basic Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 905 Accepted: 228 Description The p ...
- Gold Coins 分类: POJ 2015-06-10 15:04 16人阅读 评论(0) 收藏
Gold Coins Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 21767 Accepted: 13641 Desc ...
- PIE(二分) 分类: 二分查找 2015-06-07 15:46 9人阅读 评论(0) 收藏
Pie Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submissio ...
- 苹果应用商店AppStore审核中文指南 分类: ios相关 app相关 2015-07-27 15:33 84人阅读 评论(0) 收藏
目录 1. 条款与条件 2. 功能 3. 元数据.评级与排名 4. 位置 5. 推送通知 6. 游戏中心 7. 广告 8. 商标与商业外观 9. 媒体内容 10. 用户界面 11. 购买与货币 12. ...
- Codeforces816A Karen and Morning 2017-06-27 15:11 43人阅读 评论(0) 收藏
A. Karen and Morning time limit per test 2 seconds memory limit per test 512 megabytes input standar ...
- Codeforces777D Cloud of Hashtags 2017-05-04 18:06 67人阅读 评论(0) 收藏
D. Cloud of Hashtags time limit per test 2 seconds memory limit per test 256 megabytes input standar ...
- hdu1158 Employment Planning 2016-09-11 15:14 33人阅读 评论(0) 收藏
Employment Planning Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Othe ...
- 初学者必知的Python中优雅的用法 分类: Python 2015-05-11 15:02 782人阅读 评论(0) 收藏
本文由 伯乐在线 - 淘小米 翻译,Daetalus 校稿.未经许可,禁止转载!英文出处:freepythontips.wordpress.com.欢迎加入翻译小组. Hi 朋友们.由于我最近都比较忙 ...
随机推荐
- genmotion 安装 app 报错 This application is't compatible with your mobile phone解决办法
请下载这个文件:http://pan.baidu.com/s/1jIyMNbg(一个zip包) 将这个zip包拖放到genymotion的屏幕中,安装,然后重启就行了 我安装的Samsung Gala ...
- Repeater更具条件为每行数据背景填充颜色
后台代码 protected void RptPosterManager_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.I ...
- JavaScript(二)-精简
十三 DOM(文档对象模型) 1 作用 : 可访问javascript HTML文档的所有元素. 2 功能: (1) 改变html输出流 eg: <script> ...
- windows下手动安装pyinstaller(python2.7)
1.首先,安装python2.7.13,官网下载msi版(windows直接安装): https://www.python.org/downloads/ 2.然后,到python包官网依次下载,fut ...
- javascript客户端遍历控件与获取父容器对象
javascript客户端遍历控件与获取父容器对象示例代码 1,遍历也面中所有的控件function findControlAll() { var inputs=document. ...
- YII cookie和session的使用方法
设置cookie://首先新建cookie$cookie = new CHttpCookie(‘mycookie’, ‘this is my cookie’);//定义cookie的有效期$cooki ...
- Python Geoip 获取IP地址经度、纬度
简介: 除了一些免费的 API 接口,例如 http://ipinfo.io/223.155.166.172 可以得到一些信息外,还可以通过 python-geoip 库来解决这个问题. shell ...
- dubbo 提供者 ip不对
1.服务器多网卡绑定,导致服务起来后程序自己选择的ip不对. 2.提供服务的机器开启了vpn. 3.dubbo配置文件中写死了host. 以下为转载:转自http://www.ithao123.cn/ ...
- nginx反向代理同一主机多个网站域名
nginx反向代理同一ip多个域名,给header加上host就可以了 proxy_set_header Host $host; nginx.conf例子 upstream ...
- JAVA - 守护线程(Daemon Thread)
转载自:http://www.cnblogs.com/luochengor/archive/2011/08/11/2134818.html 在Java中有两类线程:用户线程 (User Thread) ...