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

求字符串的字串,使前缀后缀都为这个字串,按字母数量排序输出数量。

用了KMP的未优化的next数组。

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std; char a[];
int ans[],next[]; void get_next(int len)
{
int i = ,j = -;
next[] = -;
while(i < len)
{
if(j == - || a[i] == a[j])
{
++i;
++j;
next[i] = j;
}
else j = next[j];
}
}
int main()
{
while(~scanf("%s",a))
{
int cnt = ,len = strlen(a);
int now = len;
get_next(len);
while(now != )
{
now = next[now];
ans[cnt++] = now;
}
for(int i = cnt-;i >= ;i--) printf("%d ",ans[i]);
printf("%d\n",len);
}
return ;
}

POJ_2752_KMP的更多相关文章

随机推荐

  1. Spring的一些基本概念(面试备用哦)

    1.什么是Spring, 它有什么特点? 包括哪些内容? Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架. ◆  轻量——从大小与开销两方面而言Spring都是轻量的.完整 ...

  2. Linux下安装oracle提示INS-20802 Oracle Net Configuration Assistant

    安装oracle的时候,在最后install过程中,突然弹出INS-20802 :Oracle Net Configuration Assistant 错误. 查了一些资料,也尝试了很多,但是最终尝试 ...

  3. Quartz.NET总结(八)如何根据自己需要配置Topshelf 服务

    前面讲了如何使用Topshelf 快速开发windows服务, 不清楚的可以看之前的这篇文章:https://www.cnblogs.com/zhangweizhong/category/771057 ...

  4. kubespy 用bash实现的k8s动态调试工具

    原文位于 https://github.com/huazhihao/kubespy/blob/master/implement-a-k8s-debug-plugin-in-bash.md 背景 Kub ...

  5. Sql Server执行一条Update语句很慢,插入数据失败

    今天同事要我修改服务器数据库里面的2条数据,查看服务器上的SQL Server数据库的时候,发现这几天数据没有添加成功,然后发现磁盘很快就满了,执行Update语句时,执行半天都提示还在执行,查询语句 ...

  6. JS怎样做四舍五入

    1 .tofixed方法 toFixed() 方法可把 Number 四舍五入为指定小数位数的数字.例如将数据Num保留2位小数,则表示为:toFixed(Num):但是其四舍五入的规则与数学中的规则 ...

  7. The command '/bin/sh -c unzip -o php-7.2.23-src.zip' returned a non-zero code: 1

    Dockerfile 内容 #centos7 nginx php redis inotify FROM centos:7 MAINTAINER INFOBIRD RUN yum -y update & ...

  8. 对Java中可变参数的理解

    说明 可变参数:是DK1.5之后出现的新特性,其实可变参数是0.1.2.3.....个参数的数组 使用前提 当方法的参数列表数据类型已经确定,但是参数的个数不确定,就可以使用可变参数 使用格式 修饰符 ...

  9. python如何计算程序(代码块)的运行时间?

    1.引入time模块 2.调用time模块的time()函数 :用来获取当前的时间,返回的单位是秒 # 引入一个time模块, * 表示time模块的所有功能, # 作用: 可以统计程序运行的时间 f ...

  10. Spring Boot2 系列教程 (五) | yaml 配置文件详解

    自定义属性加载 首先构建 SpringBoot 项目,不会的看这篇旧文 使用 IDEA 构建 Spring Boot 工程. 首先在项目根目录 src >> resource >&g ...