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
HDU3374
hdu3374
这题有两个要求,一是求最大最小的位置,二是求最大最小出现的次数,次数是比较简单的。次数需要判断这个字符串本身是否是由重复字符串组成。这个比较好求,用kmp算法。求助next【】数组。用字符串长度了len减去next【】数组最后一个元素的长度即为组成字符串的子字符串的长度,极为cr,再判断这个长度为cr的字符串是否能构成原字符串。之后的就是求出最小#include#include#includeus
爱生活的程序猿
·
2020-08-24 23:55
HDU3374
题目链接:
HDU3374
题意:给出一个字符串,依次左移一个单位形成一堆字符串,求其字典序最小和最大的字符串需要左移多少位,以及一共有几个这样的字符串。
teddywang3
·
2020-08-24 22:21
ACM
hdu3374
最大最小表示+kmp
#include#include#definemaxn1000010chars[2*maxn];intnxt[2*maxn];intlen;intget(intflag){inti=1,j=2,k=0;while(i0&&s[i]!=s[k+1])k=nxt[k];if(s[i]==s[k+1])k++;nxt[i]=k;}}intkmp(char*p){intn=2*len;intk=0,j=0
nash142857
·
2020-08-24 22:49
字符串处理
hdu3374
String Problem
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3374题解:循环移位,找字典序最前的和字典序最后的下标标号,然后把次数也输出来。用最小表示法和最大表示法找到字典序最小和最大的字符串。用kmp计算出现的次数(最小循环周期)。//http://blog.csdn.net/coraline_m/article/details/9834619#include
不可不戒
·
2020-08-24 22:10
KMP
kuangbin专题十六
HDU3374
最大最小表示法+KMP循环节
题意:有一个字符串,它可以通过左移一位变成另外一个同构字符串,每产生一个新的同构字符串,就编号加一,现在要你输出四个值:最小字典序的编号,最小字典序个数,最大字典序编号,最大字典序个数。题解:一开始我的想法就是暴力求出最小字典序和最大字典序,结果估算了一下喜闻乐见的超时了,然后我去看了一下,原来还有最小最大表示法这种黑科技的ORZ,突然感觉自己菜的不单单是这些常用的算法还有其他算法的知识面。。。然
Start_to_crazy
·
2020-08-24 21:54
kmp算法
HDU 3374
HDU3374
题意:字符串长度为n(n#include#include#includeusingnamespacestd;constintmaxn=1e6+10;chars[maxn];intNext[
cyl纤云弄巧
·
2020-08-24 21:21
HDOJ
method
kmp
最大最小表示法
HDU3374
(String Problem)字符串-最小表示法+KMP
/*************************************************题目大意:求字典序最小的和字典序最大的位置,若有多个则取最左边的;并给出该串在这n个串中出现的次数,即同构串的个数;算法分析:求字典序最小(大)的位置主要用到字符串的最小(大)表示法;求同构串个数可以转换为求该串最小循环节的总个数;涉及到KMP算法中的next函数;*****************
Jarily
·
2020-08-24 21:48
算法题解-字符串
hdu3374
String Problem(KMP+最小表示法)
StringProblemTimeLimit:2000/1000MS(Java/Others)MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):1648AcceptedSubmission(s):742ProblemDescriptionGiveyouastringwithlengthN,youcangenerateNstringsby
听自己心跳的声音
·
2020-08-18 09:06
模板
字符串匹配
hdu3374
String Problem(最小值表示法 + KMP)
题意给一个循环串,从某个点开始会得到一个字典序最小的串,从某个点开始会得到一个字典序最大的串,求这两个点的下标,以及其出现的次数。传送门思路最小/大表示法求下标,kmp求出现次数。最小/大表示法Code#include#includeusingnamespacestd;constintmaxn=1e6+10;intnxt[maxn],l;charstr[maxn=l)break;if((str[i
Acerkoo
·
2019-09-13 14:00
HDU 4333 Revolving Digits
先利用KMP求出原串的循环节,这里求相同字符串个数的与之前
HDU3374
是一样的。为了节省空间,之后扩展KMP也使用nexts数组开下的空间。get_extand用原串与原串匹配,由于n
qq_29480875
·
2016-03-15 21:00
KMP
扩展
HDU3374
题目链接:
HDU3374
题意:给出一个字符串,依次左移一个单位形成一堆字符串,求其字典序最小和最大的字符串需要左移多少位,以及一共有几个这样的字符串。
qq_29480875
·
2016-03-14 22:00
最小最大表示法
HDU3374
String Problem(KMP + 最小表示法)
题目链接:
HDU3374
题目大意:给你一个字符串,项链一样的可以循环表示例如“SKYLONG”可以有7中表示形式。
chaiwenjun000
·
2015-11-26 16:00
next数组
最小表示法
hdu3374
(最小最大表示法以及kmp)
题意:输出一个环形字符串的最小字典序的首位置,以及最大字典序的首位置,以及这个字符串的原字符串的循环节....... #include<iostream> #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; #define M 100
·
2015-10-30 13:32
HDU
hdu3374
(最小表示法+KMP)
StringProblemTimeLimit:2000/1000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):1296 AcceptedSubmission(s):585ProblemDescriptionGiveyouastringwithlengthN,youcangenerateNs
xj2419174554
·
2013-08-17 14:00
数据结构
字符串
KMP
最小表示法
hdu3374
最小表示法+kmp
最小循环节见这里:点击打开链接最小表示法见这里:点击打开链接#include #include #include usingnamespacestd; chars[2000005]; chart[2000005]; chars1[2000005]; intnext[1000005]; voidget_next(char*s,int*next) { intl=strlen(s); inti=0,j=
JustSteps
·
2013-03-27 10:00
hdu 3374 String Problem
点击打开链接
hdu3374
思路:求最小/最大表示+kmp匹配分析:1题目要求给定一个字符串求出最小和最大表示的rank和出现的times。
cgl1079743846
·
2012-11-05 18:00
hdu3374
最大最小表示+kmp
#include #include #definemaxn1000010 chars[2*maxn]; intnxt[2*maxn]; intlen; intget(intflag) { inti=1,j=2,k=0; while(i0&&s[i]!=s[k+1]) k=nxt[k]; if(s[i]==s[k+1]) k++; nxt[i]=k; } } intkmp(char*p) { int
nash142857
·
2012-08-28 14:00
【KMP】
hdu3374
String Problem
StringProblemhttp://acm.hdu.edu.cn/showproblem.php?pid=3374ProblemDescriptionGiveyouastringwithlengthN,youcangenerateNstringsbyleftshifts.Forexampleletconsiderthestring“SKYLONG”,wecangeneratesevenstri
ACM_Ted
·
2012-08-01 23:00
hdu3374
String Problem
题目: http://acm.hdu.edu.cn/showproblem.php?pid=3374叫你求最小表示,和最大表示的开始位置(多个解输出最前面的那个),和表示的次数方法: 最小最大表示法+KMP#include #include #include usingnamespacestd; chars[1111111]; intnext[1111111]; voidgetnext(){
shahdza
·
2011-07-02 19:00
上一页
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
其他