题目地址

manacher

 #include<cstdio>
#include<string.h>
#include<algorithm>
using namespace std;
const int Nmax=;
char s[Nmax];
char str[Nmax*+];
int p[Nmax*+];
int hashh[Nmax*+];
int id;
int maxlen;
int len;
int start;
int endd;
void init()
{
id=;
maxlen=;
int n=strlen(s);
str[]='$';
str[]='#';
for(int i=;i<n;i++)
{
str[i*+]=s[i];
hashh[i*+]=i;
str[i*+]='#';
}
str[n*+]='&';
len=n*+;
} void get()
{
for(int i=;i<len-;i++)
{
if(id+p[id]>i)
p[i]=min(p[id*-i],p[id]+id-i);
else
p[i]=;
while(str[i-p[i]] == str[i+p[i]])
p[i]++;
if(p[i]+i>p[id]+id)
id=i;
if(p[i]>maxlen)
{
maxlen=p[i];
start=hashh[i-p[i]+];
endd=hashh[i+p[i]-];
}
}
} int main()
{
char c;
while(scanf("%c",&c)!=EOF)
{
//printf("c:%c\n",c);
getchar();
scanf("%s",s);
getchar();
init();
get();
if(maxlen->=)
{
printf("%d %d\n",start,endd);
for(int i=start;i<=endd;i++)
{
char k=(s[i]-c+)%+'a';
printf("%c",k);
}
printf("\n");
}
else
printf("No solution!\n");
}
return ;
}

HDU 3294 Girls' research的更多相关文章

  1. Hdu 3294 Girls' research (manacher 最长回文串)

    题目链接: Hdu 3294  Girls' research 题目描述: 给出一串字符串代表暗码,暗码字符是通过明码循环移位得到的,比如给定b,就有b == a,c == b,d == c,.... ...

  2. HDU 3294 Girls' research(manachar模板题)

    Girls' researchTime Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total ...

  3. hdu 3294 Girls' research(manacher)

    Problem Description One day, sailormoon girls are so delighted that they intend to research about pa ...

  4. [manacher] hdu 3294 Girls&#39; research

    题意: 给一个字符x代表真实的a 然后输出的时候转换 然后就是求最长回文子串的串是什么 长度要大于1 思路: 就是裸的manacher,弄清楚下标的转换关系就好了 代码: #include" ...

  5. hdu 3294 Girls&#39; research

    #include<stdio.h> #include<string.h> #define MAX 200020 char s[MAX],ss[MAX*2],str[2]; in ...

  6. (回文串 Manacher )Girls' research -- hdu -- 3294

    http://acm.hdu.edu.cn/showproblem.php?pid=3294 Girls' research Time Limit:1000MS     Memory Limit:32 ...

  7. Girls' research(马拉车算法) hdu 3294

    文章目录 思路如下 Manachar代码注释 题解如下 Problem Description One day, sailormoon girls are so delighted that they ...

  8. 回文串--- Girls' research

    HDU   3294 Problem Description One day, sailormoon girls are so delighted that they intend to resear ...

  9. Manacher 算法(hdu 3068 && hdu 3294)

    今天打算补前晚 BC 的第二题,发现要用到能在 O(n) 时间求最大回文子串长度的 Manacher 算法,第一次听,于是便去百度了下,看了大半天,总算能看懂了其思想,至于他给出的代码模板我没能完全看 ...

随机推荐

  1. 什么是LeapMotion

    LeapMotion预览——什么是LeapMotion LeapMotion预览 这个就是LeapMotion: 原文转自:   LeapMotion预览 LeapMotion 官网:http://l ...

  2. 自己动手写spring容器(1)

    毕业刚刚一年多一点,毕业了后也顺利的进入了一家著名的互联网公司,做的是后台系统,用的呢也是SSI(struts2,spring)框架,平时做做项目,也已足够了,但是感觉越来越没动力了,越来越没有激情了 ...

  3. DDNS client on a Linux machine

    Using this tool -> inadyn apt-get install inadyn -y Usage: https://github.com/troglobit/inadyn#ex ...

  4. java动态加载配置文件

    最近项目中需要做定时任务,即定时数据库的备份.定时时间用户可以在界面中配置,要求配置修改好立即生效. 想不到什么好办法.下面是一种实现思路 把用户配置的时间存到properties配置文件中,定时任务 ...

  5. Android开发(24)---安卓中实现多线程下载(带进度条和百分比)

    当我们学完java中多线程的下载后,可以将它移植到我们的安卓中来,下面是具体实现源码: DownActivity.java package com.example.downloads; import ...

  6. Windows系统架构

    操作系统模型   大多数操作系统中,都会把应用程序和内核代码分离运行在不同的模式下.内核模式访问系统数据和硬件,应用程序运行在没有特权的模式下(用户模式),只能使用有限的API,且不能直接访问硬件.当 ...

  7. Elasticsearch 5.0 _source field的简单认识

    前言:本文的目的是为后续磁盘空间利用优化做铺垫,主要知识点来源于官网 一._source是什么 _source field是我们在PUT数据时候的json body: PUT store_index/ ...

  8. java反射的运用场景

    1.反射的好处是:可以在运行时确认对象以及方法. 2.下面举个简单的例子来说下反射的运用场景: 假如一款游戏有一个配置文件,配置文件里有个renderType设置了游戏启动时调用哪个RenderHan ...

  9. 说说Request.Params[key]和Request[key]

    摘要 其实你一看到,就应该会想到,这个不简单吗,不就是服务端接收参数的一种方式吗?是的.在asp.net编程中,QueryString.Form.Cookie是三种比较常见的接收客户端参数的方式.Qu ...

  10. Mybatis学习笔记(二) 之实现数据库的增删改查

    开发环境搭建 mybatis 的开发环境搭建,选择: eclipse j2ee 版本,mysql 5.1 ,jdk 1.7,mybatis3.2.0.jar包.这些软件工具均可以到各自的官方网站上下载 ...