sdut 資料結構實驗之串一 KMP簡單應用

2021-10-05 09:41:14 字數 805 閱讀 8476

資料結構實驗之串一:kmp簡單應用

time limit: 1000 ms memory limit: 65536 kib

problem description

給定兩個字串string1和string2,判斷string2是否為string1的子串。

input

輸入包含多組資料,每組測試資料報含兩行,第一行代表string1(長度小於1000000),第二行代表string2(長度小於1000000),string1和string2中保證不出現空格。

output

對於每組輸入資料,若string2是string1的子串,則輸出string2在string1中的位置,若不是,輸出-1。

sample input

abca

123456

45abc

dddsample output14

-1

#include

#include

#include

int next[

1000002];

void

get(

char s)

else t=next[t];}

}int

kmp(

char s1,

char s2)

else t=next[t];}

if(t==len2)

return i-t+1;

else

return-1

;}intmain()

return0;

}

SDUT 資料結構實驗之串三 KMP應用

time limit 1000 ms memory limit 65536 kib submit statistic discuss problem description 有n個小朋友,每個小朋友手裡有一些糖塊,現在這些小朋友排成一排,編號是由1到n。現在給出m個數,能不能唯一的確定一對值l和r ...

sdut 3311 資料結構實驗之串三 KMP應用

time limit 1000ms memory limit 65536k 有疑問?點這裡 有n個小朋友,每個小朋友手裡有一些糖塊,現在這些小朋友排成一排,編號是由1到n。現在給出m個數,能不能唯一的確定一對值l和r l r 使得這m個數剛好是第l個小朋友到第r個小朋友手裡的糖塊數?首先輸入乙個整數...

SDUT 3311 資料結構實驗之串三 KMP應用

有n個小朋友,每個小朋友手裡有一些糖塊,現在這些小朋友排成一排,編號是由1到n。現在給出m個數,能不能唯一的確定一對值l和r l r 使得這m個數剛好是第l個小朋友到第r個小朋友手裡的糖塊數?首先輸入乙個整數n,代表有n個小朋友。下一行輸入n個數,分別代表每個小朋友手裡糖的數量。之後再輸入乙個整數m...