noip单词接龙
看了许多题解都好长啊,自不量力的来贴一下代码
(震惊于这都能ac。。。)
这道题的思路是先从字符串中找有重部分然后直接比较剩下的部分,比较的数据也可以用来计算数值
其实满水的题
总之看注释啦(竟然能耐心的写完注释...)
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<stack>
#include<cstring>
using namespace std;
int n,num;
string w[];//记录单词
int use[];//记录使用单词次数
int ans,now=;//记录接龙的长度,now=1是省略了头字母
void dfs(int k)//深搜
{
ans=max(ans,now);//跟上个题解学的,取大
for(int i=;i<=n;i++)//搜索每个单词
{
if(use[i]<)//判断
{
for(int j=;j<w[k].length();j++)//判断,如果首字母相同则比较
if(w[i][]==w[k][j])
{
int l1=j,l2=;
while(w[i][l2]==w[k][l1]&&l1<w[k].length())l1++,l2++;//比较至词尾
if(l1>=w[k].length())//如果比较完成
{
now+=w[i].length()-l2;//新单词减去与上个单词重合的长度
use[i]++;
dfs(i);//以这个单词为新节点搜索
now-=w[i].length()-l2;
use[i]--;
}
}
}
}
}
int main()
{
cin>>n;
for(int i=;i<=n;i++)
cin>>w[i];
cin>>w[];//**把头字母看做一个单词**
dfs();//**从头字母这个单词搜索**
cout<<ans;
return ;
}/*我无聊呀,无聊!一袋恰恰香瓜子,我一个人嗑完了,一共1869颗,21颗是空的,混进来9颗带虫的,还有6颗没炒开,是连在一起的,还有4个是苦的。中间喝了7杯水。没错,这就是孤独。…刚才这一段话一共67个字,11个标点符号,其中8个逗号,3个句号,一共有587划,其中横78划,竖137划,撇65划,捺57划,其他139划。没错这就是闲人的最高境界难过同意的来个赞赞?(?ε`) 顺便无聊一下*/
noip单词接龙的更多相关文章
- codevs 1018 [noip 2000 提高] 单词接龙
题目链接:http://codevs.cn/problem/1018/ 题目描述 Description 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母, ...
- Codevs 1018 单词接龙
1018 单词接龙 2000年NOIP全国联赛普及组NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描 ...
- 单词接龙(codevs 1018)
2000年NOIP全国联赛普及组NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 单词接龙是一个与我们经 ...
- NOIP2000单词接龙[DFS]
题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合 ...
- Noip2000 T3 单词接龙
题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合 ...
- 洛谷 P1019 单词接龙 Label:dfs
题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合 ...
- 【wikioi】1018 单词接龙
题目链接 算法:DFS+考你阅题 题目描述: 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中 ...
- NOIP2000 单词接龙
题三. 单词接龙 (27分) 问题描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的 ...
- 1172: 单词接龙(XCOJ 暴力DFS)
1172: 单词接龙 时间限制: 1 Sec 内存限制: 128 MB提交: 12 解决: 5 标签提交统计讨论版 题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词 ...
随机推荐
- .net framework 项目 build 出现 未能加载文件或程序集“netfx.force.conflicts”或它的某一个依赖项
问题描述 Severity Code Description Project File Line Suppression State Error 未能加载文件或程序集"netfx.force ...
- 媳妇要转java开发,我该怎么办?
我是一名5年的java开发者,媳妇是一个5年的软件实施工程师,我们结婚快一年了,这几天她突然对我说,她想转java开发,让我辅导她学习java,我该怎么弄,我心底是不愿意她转开发的,毕竟她年龄也不小了 ...
- navicat for mysql cant connect to server 10038 远程连接出错
使用的登录账号没有开通远程登录的权限,所以只能在服务器上通过命令行登录. 解决办法如下:1.在服务器上通过命令行或客户端登录mysql:2.执行以下sql:GRANT ALL PRIVILEGES O ...
- Windows下Codeblocks调试Cocos2d-x项目体验(一次失败的体验)
很久之前的一篇文章有介绍过在Ubuntu下安装Cocos2d-x3.11并使用Codeblock调试Cocos2d-x程序:http://www.cnblogs.com/moonlightpoet/p ...
- java发送邮件无法显示图片 图裂 的解决办法
package com.thinkgem.jeesite.common.utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; ...
- Qt编写输入法V2018超级终结版
对于qt嵌入式linux开发人员来说,输入法一直是个鸡肋问题,要么不支持实体键盘同步,要么不能汉字输入,要么不支持网页输入等,这几年通过陆续接触大量的各种输入法应用场景客户,得到真实需求,不断改进,最 ...
- react proxy 报错
react项目中,package.json中proxy的配置如下 "proxy": { "/api/rjwl": { "target": & ...
- JavaSE 可变参数的方法重载
/** * 可变参数的方法重载 */ class A { public void test(int a, int b) { System.out.println(a+", "+b) ...
- web 接口测试入门
在此之前先简单的介绍一下基本概念:我们想要打开一个网站,首先是需要往浏览器的地址的URL输入框架中输入网地址.当我敲下回车后,通过HTTP协议,将网址传送到域名解析服务器,域名解析服务器根据网址找到对 ...
- C++ map的方法
参考文档:http://blog.csdn.net/allovexuwenqiang/article/details/5686583 Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序 ...