【00NOIP提高组】单词接龙
2024-08-27 09:29:29
#include<bits/stdc++.h>
using namespace std;
const int N=;
int n,length;
int vis[N];
string str[N];
inline int check(string x,string y)
{
int len=min(x.size(),y.size());
for(int i=;(x.size()==)?(i<=len):(i<len);i++)
{
bool flag=true;
for(int j=;j<i;j++)
{
if(x[x.size()+j-i]!=y[j])
{
flag=false;
break;
}
}
if(flag) return i;
}
return ;
}
void dfs(string s,int length_now)
{
length=max(length,length_now);
for(int i=;i<=n;i++)
{
if(vis[i]>) continue;
int add=check(s,str[i]);
if(add)
{
vis[i]++;
dfs(str[i],length_now+str[i].size()-add);
vis[i]--;
}
}
}
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++) cin>>str[i];
cin>>str[n+];
dfs(str[n+],);
printf("%d",length);
return ;
}
最新文章
- mybatis入门基础(九)----逆向工程
- 关于项目中值对象Identifier的设计-领域驱动
- Deepin 15.3 编译同步SudaMod 2.0
- git pull 冲突解决
- SDF文件的用途
- js继承的概念
- SQLite(快速上手版)笔记
- 《C语言入门1.2.3—一个老鸟的C语言学习心得》—清华大学出版社炮制的又一本劣书及伪书
- c#高效的线程安全队列ConcurrentQueue<;T>;(上)
- SpingMVC ModelAttribute的用法
- Object-C中的内存管理小记
- POJ2533 Longest Ordered Subsequence 【最长递增子序列】
- SVN版本控制的使用
- 诡异的 &;quot;password取回&;quot; 邮件问题
- Xcode6 UIWebView与JavaScript交互(issue fix)
- C++多态实现原理
- 逛公园 [NOIP2017 D1T3] [记忆化搜索]
- 爬虫下载City Scape数据
- Go 初体验 - 令人惊叹的语法 - defer.3 - defer 函数参数计算时机
- hazelcast初探