- 1458:Seek the Name, Seek the Fame
patient 007
#ACM训练#KMP算法
【题目描述】原题来自:POJ2752给定若干字符串(这些字符串总长≤4×105),在每个字符串中求出所有既是前缀又是后缀的子串长度。例如:ababcababababcabab,既是前缀又是后缀的:ab,abab,ababcabab,ababcababababcabab。【输入】输入若干行,每行一个字符串。【输出】对于每个字符串,输出一行,包含若干个递增的整数,表示所有既是前缀又是后缀的子串长度。【
- POJ2752 Seek the Name, Seek the Fame【字符串匹配+KMP】
海岛Blog
#ICPC-备用二#ICPC-字符串#ICPC-POJ
SeektheName,SeektheFameTimeLimit:2000MSMemoryLimit:65536KTotalSubmissions:21528Accepted:11246DescriptionThelittlecatissofamous,thatmanycouplestrampoverhillanddaletoByteland,andaskedthelittlecattogiven
- POJ2752 Seek the Name Seek the Fame
smaracoon
数据结构编程实验04
//4_7_19:SeektheNameSeektheFameCat给婴儿取名字POJ2752#include#include#includeusingnamespacestd;constintmaxc=400000+10;intlen;intsuf[maxc];intans[maxc];charstr[maxc];voidKMP(){inti,j=0,k=-1,count=0;len=strle
- poj2752
@阿奇@
kmppoj
发现不优化的next数组经常用啊……#include#include#include#includeusingnamespacestd;intnext[1000010];charp[1000010];intpLen;voidGetNext(){pLen=strlen(p);next[0]=-1;intk=-1;intj=0;while(js;intmain(){while(~scanf("%s",
- 哈希 poj2752 Seek the Name, Seek the Fame
fanesemyk
字符串
TimeLimit:2000MSMemoryLimit:65536KTotalSubmissions:17568Accepted:9009DescriptionThelittlecatissofamous,thatmanycouplestrampoverhillanddaletoByteland,andaskedthelittlecattogivenamestotheirnewly-bornbab
- |poj 2752|KMP|Seek the Name, Seek the Fame
NotFound1
Poj/Hdu字符串-KMP
poj传送门/*poj2752教训:1、注意f数组的意思就是前缀和后缀最长公共部分长度,灵话运用解题*/#include#include#include#includeusingnamespacestd;#definems(i,j)memset(i,j,sizeofi);constintMAXN=400000+5;chars[MAXN];intf[MAXN],n,ans[MAXN],tot;voi
- poj2752 seek the name seek the fame
thessuye
字符串
题意:给你一个字符串,计算既是前缀又是后缀的字符串的长度,按升序输出。思路:首先next[len]代表s中的最大的既是前缀又是后缀的串,并且长度恰好是next[len]蓝色代表匹配最大前后缀。因为该段是最大段,所以剩下的前后缀一定在其内部。所以相当于在第一段内继续寻找最大段,依次类推。新的len=next[len]继续查找next[next[len]],直到长度为零时结束,题目要求从小到大输出,所
- kmp2-HDU1358 HUST1010 POJ2406 POJ2752
RabbitMQ!!!
数据结构与算法
HDU1358http://acm.hdu.edu.cn/showproblem.php?pid=1358先构造出next[]数组,下标为i,定义一个变量j=i-next[i]就是next数组下标和下标对应值的差,如果这个差能整除下标i,即i%j==0,则说明下标i之前的字符串(周期性字符串长度为i)一定可以由一个前缀周期性的表示出来,这个前缀的长度为刚才求得的那个差,即j,则这个前缀出现的次数为
- 【poj2752】Seek the Name, Seek the Fame kmp
Mininda
poj字符串-kmp
题意:给你一个字符串,输出所有不同的前缀后缀字符串(即是前缀又是后缀)的长度。题解:运用kmp中的next数组的思想递推一下即可。//poj2752SeektheName,SeektheFame#include#include#include#include#includeusingnamespacestd;strings;intnxt[400010],ans[400010];intn,m,cnt
- POJ2752 Seek the Name, Seek the Fame
tigerisland45
前缀kmp算法后缀POJ2752
问题链接:POJ2752SeektheName,SeektheFame。读懂题后知道,这个题要算的是,给定一个字符串s,有哪些长度的s的前缀,同时也是s的后缀。首先明确一下前缀和后缀的概念。字符串s的前缀是指,从s的开始字符到s的任意字符为止的子串。字符串s的后缀是指,从s的任意字符到s的最后字符为止的子串。s是既是自身的前缀也是自身的后缀。这个问题利用KMP算法的next[]数组来解。首先对于输
- POJ2752(KMP)
LMFQYJ
大意:给定一个字符串,求所有可能的既是前缀又是后缀的字串长度。分析:按题目的意思很像求KMP中的next数组。next[len]是最大的前缀-后缀字符串长度,以此类推next[next[len]]同样为满足条件的前缀-后缀字符串长度。代码:#include
#include
#include
usingnamespacestd;
charstr[400005];
intlen,next1[4000
- poj2752 扩展kmp
jibancanyang
/**********************jibancanyang***************************Author*:jibancanyang*CreatedTime*:六5/721:17:062016*FileName*:.cpp**Problem**:扩展kmp**Analyse**:**Code**:***********************1599664856@q
- POJ2752 Seek the Name, Seek the Fame
qq_29480875
KMP
题目链接:POJ2752SeektheName,SeektheFameTimeLimit: 2000MS MemoryLimit: 65536KTotalSubmissions: 15971 Accepted: 8125DescriptionThelittlecatissofamous,thatmanycouplestrampoverhillanddaletoByteland,andaskedth
- poj2752
stay_accept
链接:点击打开链接题意:从大到小输出所有既是前缀有是后缀的字符串的长度代码:#include
#include
#include
#include
#include
usingnamespacestd;
intnext[500005];
charstr2[500005];
voidget_next(intlen2){
intj=0,k=-1;
next[0]=-1;
whil
- 【poj2752】Seek the Name, Seek the Fame KMP
LOI_DQS
DescriptionThelittlecatissofamous,thatmanycouplestrampoverhillanddaletoByteland,andaskedthelittlecattogivenamestotheirnewly-bornbabies.Theyseekthename,andatthesametimeseekthefame.Inordertoescapefromsu
- 【poj2752】Seek the Name, Seek the Fame(KMP)
Clove_unique
KMPpoj
题目描述传送门题解从后往前不断地找失配即可。代码#include
#include
#include
usingnamespacestd;
constintmax_w=400005;
charW[max_w];
intlen,T[max_w],ans[max_w],tot;
inlinevoidcalc_T(){
T[0]=-1;
intj;
for(inti=0;i=1;--i)
prin
- poj 2752 KMPnext[]数组的理解 以及 两种优化
Summer__show_
poj2752此题易解为:#include#include#includeusingnamespacestd;chara[400005];intnext[400005];intlen;voidgetnext(){inti=0,k=-1;next[0]=-1;while(i=0)deal(next[n]);if(n>0)printf("%d",n);}intmain(){while(scanf("%
- POJ2752 Seek the Name,Seek the Fame KMP算法
name
KMP继续练手.题目问的是一个串前缀等于后缀的可能长度是哪些,输出来.题目考的是对KMP失配指针的理解,当最后一位失配(即'\0'那里)时,指针会移动到前缀对应匹配的部分,所以这个长度是我们要的,然后接着这个新的前缀的失配指针移到的部分,与这个前缀的后缀也是匹配的..这样一直滚下去就可以了得到所有可能的值.
贴一记代码.
#include<iostream>
#include&
- 【POJ2752】【KMP】Seek the Name, Seek the Fame
name
Description The little cat is so famous, that many couples tramp over hill and dale to Byteland, and asked the little cat to give names to their newly-born babies. They seek the name, and at the same
- POJ2752 - Seek the Name, Seek the Fame(KMP)
name
题目大意
给定一个字符串S,求出所有既是S的前缀又是S的后缀的子串长度 题解
从末尾位置倒推,经过的失配函数值就是题目要求求的 代码:
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <vector>
- poj2752
poj
http://poj.org/problem?id=2752 View Code
//
寻找前子串与后子串相等的子串
#include
<
iostream
>
using
namespace
std;
char
ch[
400001
- poj2752
poj
kmp的变形,kmp算法是先将某穿和自身匹配,写出fail数组。我们只需要这个fail数组,它的最后一位存储了我们所要求的答案中的最大长度。然后每次利用fail数组向前跳转就可以得到所有答案。 View Code
#include
<
iostream
>
#include
<
cstdio
- POJ 2752 既是前缀又是后缀的子串 (kmp)
chaiwenjun000
字符串KMP
题目链接:POJ2752给定一个字符串,求出所有既是前缀又是后缀的子串。思路KMP的next数组的运用(改进前),如果next数组中next[i]=k正值,那么就代表这从“0~i-1”位置的子串的前缀后缀相同的最大长度为k,并且k代表着与当前后缀最大匹配的前缀位置。 0123456789101112字符串aabaabaabaab next[]-1010123456789如表next[12]=9,9
- POJ2752 Seek the Name, Seek the Fame
wust_ZJX
SeektheName,SeektheFameTimeLimit: 2000MS MemoryLimit: 65536KTotalSubmissions: 14203 Accepted: 7077DescriptionThelittlecatissofamous,thatmanycouplestrampoverhillanddaletoByteland,andaskedthelittlecatto
- poj2752 Seek the Name, Seek the Fame
Kirito_Acmer
KMP
DescriptionThelittlecatissofamous,thatmanycouplestrampoverhillanddaletoByteland,andaskedthelittlecattogivenamestotheirnewly-bornbabies.Theyseekthename,andatthesametimeseekthefame.Inordertoescapefromsu
- POJ2752 Seek the Name, Seek the Fame KMP-next数组的应用
AC_Gibson
题目大意:给你一个字符串,让你找出既是前缀同时又是后缀的子串在主串中的位置,如果有多个,按升序输出。分析:考察KMP算法中对next数组的理解。我们知道next[j]纪录的是字符串第j个位置之前的next[j]个连续的字符和该串的长度为next[j]的前缀是相同的。既然如此,要判断一个后缀是否等于前缀,只需看next[len]是否等于0即可,next[len]!=0就意味着有一个长度为next[l
- POJ2752——Seek the Name, Seek the Fame
Guard_Mine
字符串KMP
SeektheName,SeektheFameTimeLimit:2000MS MemoryLimit:65536KTotalSubmissions:12620 Accepted:6198DescriptionThelittlecatissofamous,thatmanycouplestrampoverhillanddaletoByteland,andaskedthelittlecattogive
- POJ2752 Seek the Name, Seek the Fame 【KMP】
u012846486
POJ2752
SeektheName,SeektheFameTimeLimit: 2000MS MemoryLimit: 65536KTotalSubmissions: 11602 Accepted: 5680DescriptionThelittlecatissofamous,thatmanycouplestrampoverhillanddaletoByteland,andaskedthelittlecatto
- POJ2752
u013570474
#include#include#include#includeusingnamespacestd;#definemaxn400000intnext[maxn+2];charp[maxn+2];intnum[maxn];voidkmp(charp[]){ intm=strlen(p+1); next[1]=0; for(intk=0,q=2;q0&&p[k+1]!=p[q]) k
- hdu 4763 Theme Section(KMP)
qq7366020
KMPHDU4763
题目链接: hdu4763题目大意: 找出字符串的最长子串,这个子串满足既是前缀和后缀,并且在中间会出现解题思路: 不妨先找出所有前缀等于后缀的子串长度(poj2752 解题报告) 从长到短(长度不大于主串的1/3)枚举子串的长度 前缀等于后缀的子串长度为ans[i] 根据next[]的性质,中间再次出现这个串的话,那么next[]数组的值必会等于
- rust的指针作为函数返回值是直接传递,还是先销毁后创建?
wudixiaotie
返回值
这是我自己想到的问题,结果去知呼提问,还没等别人回答, 我自己就想到方法实验了。。
fn main() {
let mut a = 34;
println!("a's addr:{:p}", &a);
let p = &mut a;
println!("p's addr:{:p}", &a
- java编程思想 -- 数据的初始化
百合不是茶
java数据的初始化
1.使用构造器确保数据初始化
/*
*在ReckInitDemo类中创建Reck的对象
*/
public class ReckInitDemo {
public static void main(String[] args) {
//创建Reck对象
new Reck();
}
}
- [航天与宇宙]为什么发射和回收航天器有档期
comsci
地球的大气层中有一个时空屏蔽层,这个层次会不定时的出现,如果该时空屏蔽层出现,那么将导致外层空间进入的任何物体被摧毁,而从地面发射到太空的飞船也将被摧毁...
所以,航天发射和飞船回收都需要等待这个时空屏蔽层消失之后,再进行
&
- linux下批量替换文件内容
商人shang
linux替换
1、网络上现成的资料
格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径`
linux sed 批量替换多个文件中的字符串
sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir`
例如:替换/home下所有文件中的www.admi
- 网页在线天气预报
oloz
天气预报
网页在线调用天气预报
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transit
- SpringMVC和Struts2比较
杨白白
springMVC
1. 入口
spring mvc的入口是servlet,而struts2是filter(这里要指出,filter和servlet是不同的。以前认为filter是servlet的一种特殊),这样就导致了二者的机制不同,这里就牵涉到servlet和filter的区别了。
参见:http://blog.csdn.net/zs15932616453/article/details/8832343
2
- refuse copy, lazy girl!
小桔子
copy
妹妹坐船头啊啊啊啊!都打算一点点琢磨呢。文字编辑也写了基本功能了。。今天查资料,结果查到了人家写得完完整整的。我清楚的认识到:
1.那是我自己觉得写不出的高度
2.如果直接拿来用,很快就能解决问题
3.然后就是抄咩~~
4.肿么可以这样子,都不想写了今儿个,留着作参考吧!拒绝大抄特抄,慢慢一点点写!
- apache与php整合
aichenglong
php apache web
一 apache web服务器
1 apeche web服务器的安装
1)下载Apache web服务器
2)配置域名(如果需要使用要在DNS上注册)
3)测试安装访问http://localhost/验证是否安装成功
2 apache管理
1)service.msc进行图形化管理
2)命令管理,配
- Maven常用内置变量
AILIKES
maven
Built-in properties
${basedir} represents the directory containing pom.xml
${version} equivalent to ${project.version} (deprecated: ${pom.version})
Pom/Project properties
Al
- java的类和对象
百合不是茶
JAVA面向对象 类 对象
java中的类:
java是面向对象的语言,解决问题的核心就是将问题看成是一个类,使用类来解决
java使用 class 类名 来创建类 ,在Java中类名要求和构造方法,Java的文件名是一样的
创建一个A类:
class A{
}
java中的类:将某两个事物有联系的属性包装在一个类中,再通
- JS控制页面输入框为只读
bijian1013
JavaScript
在WEB应用开发当中,增、删除、改、查功能必不可少,为了减少以后维护的工作量,我们一般都只做一份页面,通过传入的参数控制其是新增、修改或者查看。而修改时需将待修改的信息从后台取到并显示出来,实际上就是查看的过程,唯一的区别是修改时,页面上所有的信息能修改,而查看页面上的信息不能修改。因此完全可以将其合并,但通过前端JS将查看页面的所有信息控制为只读,在信息量非常大时,就比较麻烦。
- AngularJS与服务器交互
bijian1013
JavaScriptAngularJS$http
对于AJAX应用(使用XMLHttpRequests)来说,向服务器发起请求的传统方式是:获取一个XMLHttpRequest对象的引用、发起请求、读取响应、检查状态码,最后处理服务端的响应。整个过程示例如下:
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange
- [Maven学习笔记八]Maven常用插件应用
bit1129
maven
常用插件及其用法位于:http://maven.apache.org/plugins/
1. Jetty server plugin
2. Dependency copy plugin
3. Surefire Test plugin
4. Uber jar plugin
1. Jetty Pl
- 【Hive六】Hive用户自定义函数(UDF)
bit1129
自定义函数
1. 什么是Hive UDF
Hive是基于Hadoop中的MapReduce,提供HQL查询的数据仓库。Hive是一个很开放的系统,很多内容都支持用户定制,包括:
文件格式:Text File,Sequence File
内存中的数据格式: Java Integer/String, Hadoop IntWritable/Text
用户提供的 map/reduce 脚本:不管什么
- 杀掉nginx进程后丢失nginx.pid,如何重新启动nginx
ronin47
nginx 重启 pid丢失
nginx进程被意外关闭,使用nginx -s reload重启时报如下错误:nginx: [error] open() “/var/run/nginx.pid” failed (2: No such file or directory)这是因为nginx进程被杀死后pid丢失了,下一次再开启nginx -s reload时无法启动解决办法:nginx -s reload 只是用来告诉运行中的ng
- UI设计中我们为什么需要设计动效
brotherlamp
UIui教程ui视频ui资料ui自学
随着国际大品牌苹果和谷歌的引领,最近越来越多的国内公司开始关注动效设计了,越来越多的团队已经意识到动效在产品用户体验中的重要性了,更多的UI设计师们也开始投身动效设计领域。
但是说到底,我们到底为什么需要动效设计?或者说我们到底需要什么样的动效?做动效设计也有段时间了,于是尝试用一些案例,从产品本身出发来说说我所思考的动效设计。
一、加强体验舒适度
嗯,就是让用户更加爽更加爽的用你的产品。
- Spring中JdbcDaoSupport的DataSource注入问题
bylijinnan
javaspring
参考以下两篇文章:
http://www.mkyong.com/spring/spring-jdbctemplate-jdbcdaosupport-examples/
http://stackoverflow.com/questions/4762229/spring-ldap-invoking-setter-methods-in-beans-configuration
Sprin
- 数据库连接池的工作原理
chicony
数据库连接池
随着信息技术的高速发展与广泛应用,数据库技术在信息技术领域中的位置越来越重要,尤其是网络应用和电子商务的迅速发展,都需要数据库技术支持动 态Web站点的运行,而传统的开发模式是:首先在主程序(如Servlet、Beans)中建立数据库连接;然后进行SQL操作,对数据库中的对象进行查 询、修改和删除等操作;最后断开数据库连接。使用这种开发模式,对
- java 关键字
CrazyMizzz
java
关键字是事先定义的,有特别意义的标识符,有时又叫保留字。对于保留字,用户只能按照系统规定的方式使用,不能自行定义。
Java中的关键字按功能主要可以分为以下几类:
(1)访问修饰符
public,private,protected
p
- Hive中的排序语法
daizj
排序hiveorder byDISTRIBUTE BYsort by
Hive中的排序语法 2014.06.22 ORDER BY
hive中的ORDER BY语句和关系数据库中的sql语法相似。他会对查询结果做全局排序,这意味着所有的数据会传送到一个Reduce任务上,这样会导致在大数量的情况下,花费大量时间。
与数据库中 ORDER BY 的区别在于在hive.mapred.mode = strict模式下,必须指定 limit 否则执行会报错。
- 单态设计模式
dcj3sjt126com
设计模式
单例模式(Singleton)用于为一个类生成一个唯一的对象。最常用的地方是数据库连接。 使用单例模式生成一个对象后,该对象可以被其它众多对象所使用。
<?phpclass Example{ // 保存类实例在此属性中 private static&
- svn locked
dcj3sjt126com
Lock
post-commit hook failed (exit code 1) with output:
svn: E155004: Working copy 'D:\xx\xxx' locked
svn: E200031: sqlite: attempt to write a readonly database
svn: E200031: sqlite: attempt to write a
- ARM寄存器学习
e200702084
数据结构C++cC#F#
无论是学习哪一种处理器,首先需要明确的就是这种处理器的寄存器以及工作模式。
ARM有37个寄存器,其中31个通用寄存器,6个状态寄存器。
1、不分组寄存器(R0-R7)
不分组也就是说说,在所有的处理器模式下指的都时同一物理寄存器。在异常中断造成处理器模式切换时,由于不同的处理器模式使用一个名字相同的物理寄存器,就是
- 常用编码资料
gengzg
编码
List<UserInfo> list=GetUserS.GetUserList(11);
String json=JSON.toJSONString(list);
HashMap<Object,Object> hs=new HashMap<Object, Object>();
for(int i=0;i<10;i++)
{
- 进程 vs. 线程
hongtoushizi
线程linux进程
我们介绍了多进程和多线程,这是实现多任务最常用的两种方式。现在,我们来讨论一下这两种方式的优缺点。
首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Worker负责执行任务,因此,多任务环境下,通常是一个Master,多个Worker。
如果用多进程实现Master-Worker,主进程就是Master,其他进程就是Worker。
如果用多线程实现
- Linux定时Job:crontab -e 与 /etc/crontab 的区别
Josh_Persistence
linuxcrontab
一、linux中的crotab中的指定的时间只有5个部分:* * * * *
分别表示:分钟,小时,日,月,星期,具体说来:
第一段 代表分钟 0—59
第二段 代表小时 0—23
第三段 代表日期 1—31
第四段 代表月份 1—12
第五段 代表星期几,0代表星期日 0—6
如:
*/1 * * * * 每分钟执行一次。
*
- KMP算法详解
hm4123660
数据结构C++算法字符串KMP
字符串模式匹配我们相信大家都有遇过,然而我们也习惯用简单匹配法(即Brute-Force算法),其基本思路就是一个个逐一对比下去,这也是我们大家熟知的方法,然而这种算法的效率并不高,但利于理解。
假设主串s="ababcabcacbab",模式串为t="
- 枚举类型的单例模式
zhb8015
单例模式
E.编写一个包含单个元素的枚举类型[极推荐]。代码如下:
public enum MaYun {himself; //定义一个枚举的元素,就代表MaYun的一个实例private String anotherField;MaYun() {//MaYun诞生要做的事情//这个方法也可以去掉。将构造时候需要做的事情放在instance赋值的时候:/** himself = MaYun() {*
- Kafka+Storm+HDFS
ssydxa219
storm
cd /myhome/usr/stormbin/storm nimbus &bin/storm supervisor &bin/storm ui &Kafka+Storm+HDFS整合实践kafka_2.9.2-0.8.1.1.tgzapache-storm-0.9.2-incubating.tar.gzKafka安装配置我们使用3台机器搭建Kafk
- Java获取本地服务器的IP
中华好儿孙
javaWeb获取服务器ip地址
System.out.println("getRequestURL:"+request.getRequestURL());
System.out.println("getLocalAddr:"+request.getLocalAddr());
System.out.println("getLocalPort:&quo