E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Stammering
POJ3882
Stammering
Aliens 后缀数组+二分
统计出现m次的重复字串最长的长度和最右边的一个字符串的开始位置。可重叠很明显的后缀的公共前缀长度问题,high数组的应用。StammeringAliensTimeLimit:2000MSMemoryLimit:65536KTotalSubmissions:422Accepted:153DescriptionDr.EllieArrowayhasestablishedcontactwithanextr
Albafica
·
2020-08-24 14:30
后缀数组
[HDU 4080]
Stammering
Aliens (字符串哈希+二分)
链接HDU4080题意每组数据为一个整数m和一个长度不小于m的字符串,求该字符串的一个子串,该子串在满足出现次数不小于m的同时应尽量长。输出该长度和最右侧出现的起始位置。如果存在多组数据,输出有最靠近右侧的那组。思路关于子串和长度的题目仿佛都可以用字符串哈希+二分来水一水。这题仍然是字符串哈希的题目,对这个字符串求哈希,然后二分长度,枚举对应长度的子串哈希。每个哈希值要存储在哈希表里并记录次数,由
flinkstar
·
2020-06-30 17:56
ACM
Stammering
Aliens(二分+Hash 卡过)
StammeringAliensTimeLimit:10000/5000MS(Java/Others)MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):2516AcceptedSubmission(s):822ProblemDescriptionDr.EllieArrowayhasestablishedcontactwithanextr
厂长在线养猪
·
2019-10-18 16:00
HDU 4080
Stammering
Aliens(后缀数组+二分)
Description给出一个字符串,求这个字符串中重复次数不少于m次的最长字串长度以及这个子串在原串中最后一次出现的位置Input多组用例,每组用例第一行为一整数m,第二行为一长度不超过40000的字符串,以m=0结束输入Output输出两个整数,第一个整数为在这个字符串中重复次数不少于m次的最长子串的长度,第二个整数是这个子串在原串中最后一次出现的位置,如果不存在这样的子串则输出noneSam
V5ZSQ
·
2016-05-05 22:00
【HDOJ】4080
Stammering
Aliens
1.题目描述给定一个长为$n\in[1,4000]$的字符串,求其中长度最长的子串,并且该子串在原串中出现至少$m$次,并求最右起始位置。2.基本思路两种方法:二分+后缀数组,或者二分+哈希。(1)二分+后缀数组对子串长度进行二分,若不同后缀的公共前缀超过这个值,则对计数值累加。若计数值超过m,则证明这个公共前缀是有效的,计数过程中同时维护pos(最右边界),从而更新rpos。(2)二分+哈希仍然
Bombe
·
2016-03-16 22:00
字符串hash LA 4513
Stammering
Aliens
题目传送门题意:训练指南P225分析:二分寻找长度,用hash值来比较长度为L的字串是否相等。#include usingnamespacestd; typedefunsignedlonglongull; constintN=4e4+5; constintx=123; ullH[N],_hash[N],xp[N]; intrk[N]; charstr[N]; intm;
Running_Time
·
2016-01-12 11:00
Uva12206
Stammering
Aliens 后缀数组&&Hash
Dr.EllieArrowayhasestablishedcontactwithanextraterrestrialcivilization.However,alleffortstodecodetheirmessageshavefailedsofarbecause,asluckwouldhaveit,theyhavestumbleduponaraceofstutteringaliens!Herte
Atrp
·
2015-12-28 11:00
hdu 4080
Stammering
Aliens - 后缀数组
/* 其实这题才是第一次做 但是一直不过,也不知道怎么回事儿 就去调了那个简单题做 现在才发现少了main里面的if 还有ok2 是我之前写的,但是少了个{} 题意是,在所给的字符串中找一个子串,最少出现m次,求那个最长的串,并输出最后一次的开始位置 按长度二分,判断是否符合条件即可 */ #include<stdio.h> #
·
2015-11-13 19:20
后缀数组
HDU 4080
Stammering
Aliens(后缀数组)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4080 题意:给出一个串s,求s的一个最长子串t,使得t在s中至少出现m次? 思路:二分。分组。 int r[N],sa[N],wa[N],wb[N],wd[N],rank[N],h[N]; int cmp(int *r,int a,int b,int len) { r
·
2015-11-11 14:57
后缀数组
[zoj][3395][
Stammering
Aliens]
题目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3971 二分答案mid,用height数组判断出现连续k次,记录出现的最大下标1,二分循环时,更新最大下标2,最后输出答案。 View Code #include <cstdio> #include <cstring> #inclu
·
2015-11-11 10:12
ZOJ
LA 4513
Stammering
Aliens
在这道题上学会了两种方法解决。一种是用哈希lcp法,另一种用后缀数组求解。Dr.EllieArrowayhasestablishedcontactwithanextraterrestrialcivilization.However,alleffortstodecodetheirmessageshavefailedsofarbecause,asluckwouldhaveit,theyhavestum
zhoujl25
·
2015-11-08 01:00
后缀数组-哈希lcp算
UVa 12206 (字符串哈希)
Stammering
Aliens
体验了一把字符串Hash的做法,感觉Hash这种人品算法好神奇。 也许这道题的正解是后缀数组,但Hash做法的优势就是编码复杂度大大降低。 1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 using namespace std; 5 6 con
·
2015-11-01 14:32
字符串
LA-4513 -
Stammering
Aliens-(hash字符串+二分答案+hash排序) 找出子串出现次数
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&category=28&problem=2514&mosmsg=Submission+received+with+ID+1809543题意:给一个m给一个字符串(最大长度40000)找出字符串中重复出现m次以上
viphong
·
2015-10-05 18:00
hdu4080---
Stammering
Aliens(后缀数组+二分)
ProblemDescriptionDr.EllieArrowayhasestablishedcontactwithanextraterrestrialcivilization.However,alleffortstodecodetheirmessageshavefailedsofarbecause,asluckwouldhaveit,theyhavestumbleduponaraceofstut
Guard_Mine
·
2015-04-15 20:00
后缀数组
二分
poj 3882(
Stammering
Aliens) 后缀数组 或者 hash
后缀数组: 构建后缀数组,注意要在字符串莫末尾加上一个没出现过的字符。然后可以2分或者直接扫描,直接扫描需要用单调队列来维护VIEWCODE#include #include #include #include #include #include #include #include #include #include #include #include #include usingnamesp
u012127882
·
2015-03-27 18:00
数据结构
算法
后缀数组
LA 4513(
Stammering
Aliens-Hash求LCP)[Template:hash求LCP]
4513-StammeringAliensDr. EllieArrowayhasestablishedcontactwithanextraterrestrialcivilization.However,alleffortstodecodetheirmessageshavefailedsofarbecause,asluckwouldhaveit,theyhavestumbleduponaraceof
nike0good
·
2015-03-25 16:00
UVALive 4513 (LA 4513)
Stammering
Aliens 后缀数组 或 hash
题目大意:白书例题给出一个整数m>=1和一个字符串(m #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include usingnames
u013738743
·
2015-02-11 21:00
hash
后缀数组
uvalive
la
4513
4513
Stammering
Aliens
UVA - 12206
Stammering
Aliens (hash)
这题其实很容易想到2分长度,关键是2分后,怎么判断出现最多次的串是否》=m次了。这里需要用到hash来处理。对于一个字符串 H[i]=H[i+1]*131+s[i] ;其中H[n]=0;那么对于一个长度为L的串,hanh[i,l]=H[i]-H[i+L]*x^L;这样记录每个字符串的hash值,然后再处理起来就比较简单了。VIEWCODE#include #include #include
u012127882
·
2015-02-05 16:00
数据结构
hash
la 4513
Stammering
Aliens 字符串哈希
题意:对于给定的字符串找出至少出现m次的最长字符串,输出长度及其出现位置的最大值。#include #include #include usingnamespacestd; constintmaxn=41000; constintbas=107; unsignedlonglongHash[maxn],p[maxn],com[maxn]; chars[maxn]; intn,m; intRank
KIDGIN7439
·
2015-01-14 21:00
uva12206 -
Stammering
Aliens 哈希LCP和后缀数组两种做法
Dr. EllieArrowayhasestablishedcontactwithanextraterrestrialcivilization.However,alleffortstodecodetheirmessageshavefailedsofarbecause,asluckwouldhaveit,theyhavestumbleduponaraceofstutteringaliens!Hert
corncsd
·
2014-12-01 17:00
【字符串哈希】 HDOJ 4080
Stammering
Aliens
这道题用字符串哈希较慢。。。。C++超时。。。G++AC。。。#include #include #include #include #include #include #include #include #include #include #include #include #include #definemaxn100000 #definemaxm40005 //#defineeps1e-10
blankcqk
·
2014-09-25 18:00
HDU
uva 12206 -
Stammering
Aliens(哈希)
题目链接:uva12206-StammeringAliens题目大意:给出一个字符串,找出至少出现m次的最长子串。解题思路:哈希算法,将每个后缀数组建立一个哈希值,每次二分长度判断,每次判断时将哈希值排序,计数即可。#include #include #include usingnamespacestd; typedefunsignedlonglongll; constintmaxn=4000
u011328934
·
2014-09-01 21:00
UVA 12206 -
Stammering
Aliens(后缀数组)
UVA12206-StammeringAliens题目链接题意:给定一个序列,求出出现次数大于m,长度最长的子串的最大下标思路:后缀数组,搞出height数组后,利用二分去查找即可这题之前还写过hash的写法也能过,不过写后缀数组的时候,犯了一个傻逼错误,把none输出成node还一直找不到。。。这是刷题来第二次碰到这种逗比错误了,还是得注意。。代码:#include #include #incl
u011217342
·
2014-08-18 22:00
UVA 12206 -
Stammering
Aliens(Hash+LCP)
UVA12206-StammeringAliens题目链接题意:给定一个字符串,找出重复出现超过m次的字串的最大开始下标思路:hash大法,需要点人品,然后二分答案,每次利用hash值去找出最大下标即可代码:#include #include #include usingnamespacestd; typedefunsignedlonglongull; constullx=123; const
u011217342
·
2014-08-17 16:00
la4513
Stammering
Aliens 字符串hash
给一个m和一个字符串,求最长的至少重复出现m次的子串。拿来练练字符串hash了,随然总感觉这种不处理冲突纯拼rp的方法有点不太科学...做法的话跟后缀数组差不多了,还是二分长度l,去找串中每一个长度为l的子串看出现的次数是否大于等于m,复杂度NlogN.#include #include #include #include #include #include usingnamespacestd
yanglei040
·
2014-05-09 12:00
UVA 12206
Stammering
Aliens(基于哈希值的LCP算法)
UVA12206StammeringAliens(基于哈希值的LCP算法)题意:给你一个字符串s和m,求出字符串中至少出现m次的最长子串.如果有多解,输出最长字符串的长度以及它出现的最大位置.分析:其实本题可以用后缀数组来解.下面用哈希值来做.详见刘汝佳训练指南P225 首先对于一个长为n的字符串,我们定义它的哈希值为(下面的x值是人为设定的一个值):s[0]+s[1]*x+s[2]*x
u013480600
·
2014-04-20 22:00
ACM
HDOJ 4080
Stammering
Aliens
又用后缀数组做了一遍。。。。c要开很大才能过。。StammeringAliensTimeLimit:10000/5000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):597 AcceptedSubmission(s):224ProblemDescriptionDr.EllieArroway
u012797220
·
2014-02-20 14:00
hdu 4080
Stammering
Aliens 二分 hash
POJ3882TLE需后缀数组------------constintSEED=13331; constintMAX_N=50000+10; chars[MAX_N]; structHASH{ ULLH[MAX_N]; ULLXL[MAX_N]; intlen; HASH(){} voidbuild(char*s){ len=strlen(s); H[len]=0; XL[0]=1; for(in
cyendra
·
2014-01-11 21:00
HDOJ 4080
Stammering
Aliens
用hash挫字符串。。。。StammeringAliensTimeLimit:10000/5000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):576 AcceptedSubmission(s):213ProblemDescriptionDr.EllieArrowayhasestablis
u012797220
·
2013-12-20 15:00
字符串
哈希
hash
hdoj
UVALive 4513
Stammering
Aliens 字符串Hash求LCS
DescriptionDr. EllieArrowayhasestablishedcontactwithanextraterrestrialcivilization.However,alleffortstodecodetheirmessageshavefailedsofarbecause,asluckwouldhaveit,theyhavestumbleduponaraceofstuttering
cyendra
·
2013-08-27 20:00
LA 4513
Stammering
Aliens
题目连接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2514本题练习基于哈希值的LCP(最长公共前缀)算法,为每个后缀计算一个哈希值,满足递推式:H[i]=H[i-1]x+s[i],其中,H[n]=0对于长度为L的字符串,定义它的Has
niuox
·
2013-05-29 23:00
zoj 3395
Stammering
Aliens
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3971题目大意:求重复次数不小于k次的最长子串(可覆盖),并输出最右边出现的位置。题目思路:后缀数组加二分答案。注意k为1的情况。#include #include #include #include #include #include #include #includ
Wings_of_Liberty
·
2012-08-14 20:00
Zoj 3595
Stammering
Aliens(字符串_后缀数组)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3971题目大意:给定一个字符串S和一个重复次数n,求重复次数大等于n的最长子串,并输出最长子串中下标最大的那个子串的下标。解题思路:本题可用后缀数组解决。先用倍增算法算出sa数组、rank数组再算出height数组,最后二分查找0-n的长度,找一个最长的长度符合重复数量
woshi250hua
·
2012-05-18 19:00
[后缀数组]hdoj 4080:
Stammering
Aliens
大致题意: 给出一个数字m和一个字符串str,求出str中至少出现m次的最长的子串长度,并且求出这些子串中最靠右的子串的位置。 大致思路: 先求出后缀数组,二分枚举这个长度mid,然后分析height数组的每个大于mid的区间。过程稍复杂,具体看我代码即可。 #include<iostream&
暴风雪
·
2012-03-27 12:00
数据结构
字符串
ACM
后缀数组
hdoj 4080
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他