http://poj.org/problem?id=3450

直接暴力枚举第一行的每一个字串,在下面的字符串中查找就行了,注意不符合就及时break。

然后试了一下strstr,发现效率是KMP的3-4倍。

还可以先排序找出最短的字符串,然后暴力,但是sort好像不能对char的二维数组排序,只能用string,string的字符串处理的函数都还没怎么看,就懒得搞了。

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std; char a[][];
int n; bool cmp(char *x,char *y)
{
return strlen(x) < strlen(y);
} int main()
{
while(scanf("%d",&n) && n)
{
for(int i = ;i <= n;i++) scanf("%s",a[i]);
int len = strlen(a[]);
char t[],ans[] = "";
for(int i = ;i < len;i++)
{
int cnt = ;
for(int j = i;j < len;j++)
{
t[cnt++] = a[][j];
t[cnt] = ;
int flag = ;
for(int k = ;k <= n;k++)
{
if(!strstr(a[k],t))
{
flag = ;
break;
}
}
if(flag)
{
if(strlen(t) > strlen(ans) || strlen(t) == strlen(ans) && strcmp(t,ans) < )
{
memcpy(ans,t,sizeof(t));
}
}
}
}
if(strlen(ans) == ) printf("IDENTITY LOST\n");
else puts(ans);
}
return ;
}

POJ_3450_KMP的更多相关文章

随机推荐

  1. [技术翻译]使用Nuxt生成静态网站

    本周再来翻译一些技术文章,本次预计翻译三篇文章如下: 04.[译]使用Nuxt生成静态网站(Generate Static Websites with Nuxt) 05.[译]Web网页内容是如何影响 ...

  2. JWT实现授权认证

    目录 一. JWT是什么 二. JWT标准规范 三. 核心代码简析 四. 登录授权示例 五. JWT 使用方式 六. JWT注意事项 一. JWT是什么 JSON Web Token(JWT)是目前最 ...

  3. 入门gulp前端构建工具

    1. 全局安装 gulp:(倘若之前电脑安装过,则跳过此步骤) $ cnpm install -g gulp 2. 作为项目的开发依赖(devDependencies)安装: (此步骤会自动在目录下创 ...

  4. 【转】python中查询某个函数的使用方法

    使用help(),例查询sum函数的用法 使用官方文档: 1)打开python的IDLE: 2)点击help,选择python doc(这是python的官方文档,或者你也可以直接按f1键) 3)在调 ...

  5. C# 根据链接提取div内容

    安装NuGet包    HtmlAgilityPack var wc = new WebClient(); wc.Encoding = Encoding.GetEncoding("UTF-8 ...

  6. 【转】Java多线程面试问题集锦

    如果你即将去一家从事大型系统研发的公司进行Java面试,不可避免的会有多线程相关的问题.下面是一些针对初学者或者新手的问题,如果你已经具备良好的基础,那么你可以跳过本文,直接尝试针对进阶水平的Java ...

  7. GPU图形绘制管线简介

    (阅读GPU+编程与CG+语言之阳春白雪下里巴人所得总结) GPU图形绘制管线是描述GPU渲染(把三维世界显示为屏幕上的二维图像)的流程,主要分为三个主要阶段应用程序阶段.几何阶段.光栅阶段. 1.应 ...

  8. 题解 LA3720

    题目大意 多组数据,每组数据给定两个整数 \(n,m\),请求出 \(n\times m\) 的点阵(即 \((n-1)\times(m-1)\) 的方格)中有多少条非水平竖直的经过至少两个格点的不同 ...

  9. Java 多线程安全问题简单切入详细解析

    线程安全 假如Java程序中有多个线程在同时运行,而这些线程可能会同时运行一部分的代码.如果说该Java程序每次运行的结果和单线程的运行结果是一样的,并且其他的变量值也都是和预期的结果是一样的,那么就 ...

  10. MQ如何解决消息的顺序问题和消息的重复问题?

    一.摘要 分布式消息系统作为实现分布式系统可扩展.可伸缩性的关键组件,需要具有高吞吐量.高可用等特点.而谈到消息系统的设计,就回避不了两个问题: 1.消息的顺序问题 2.消息的重复问题 二.关键特性以 ...