POJ 2138 最长路
2024-08-31 08:08:05
思路:
如果j能由i得到 则i向j连一条边
答案就是最长路的末节点所代表的string
//By SiriusRen
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
#define N 3005
int n,first[N],next[N*N],v[N*N],tot=1,t,head,tail=1,q[N*N];
struct Node{char a[1088];int len;}str[1005];
void add(int x,int y){v[tot]=y,next[tot]=first[x],first[x]=tot++;}
int main(){
scanf("%d",&n);
for(int i=0;i<=n;i++)scanf("%s",str[i].a),str[i].len=strlen(str[i].a);
for(int i=0;i<=n;i++)
for(int j=0;j<=n;j++)
if(str[i].len+1==str[j].len){
int tempa=0,tempb=str[j].len-1;
while(str[i].a[tempa]==str[j].a[tempa])tempa++;
while(str[i].a[tempb-1]==str[j].a[tempb])tempb--;
if(tempa>=tempb)add(i,j);
}
while(head<tail){
t=q[head++];
for(int i=first[t];i;i=next[i])q[tail++]=v[i];
}
printf("%s",str[t].a);
}
最新文章
- 从c#角度看万能密码SQL注入漏洞
- vs连接服务器sql server数据库 web.config和代码
- win7 无法修改时区和时间
- tomcat部署https
- LinkedBlockingQueue和ConcurrentLinkedQueue详细用法
- MFC六大核心机制之一:MFC程序的初始化
- Spring MVC 3.0.5+Spring 3.0.5+MyBatis3.0.4全注解实例详解(三)
- python(4)&ndash;yield实现异步
- NOIP200701
- Xamarin最新crack 包含IOS
- struts——文件上传
- Codeforces Round #369 (Div. 2) C. Coloring Trees (DP)
- 详细介绍Spring 5的那些新特性与增强
- 优秀的云计算工程师需要学什么?云计算Docker学习路线
- javascript json 判断项目 是否存在不存在插入foreach 组合 输出
- bower failed: UNABLE_TO_VERIFY_LEAF_SIGNATURE
- mysql添加伪劣及查看表信息
- Unity3D-实现连续点击两次返回键退出游戏(安卓/IOS)
- spring mysql多数据源配置
- docker学习-运行第一个docker镜像hello world