YbtOJ高效高階 雜湊 2 回文子串

2021-10-22 07:41:19 字數 995 閱讀 3509

ybtoj高效高階 雜湊-2

如果乙個字串正著讀和倒著讀是一樣的,則稱它是回文的。

給定乙個長度為 n的字串s,求他的最長回文子串的長度是多少。

abcbabcbabcba

abacacbaaaab

end

case 1: 13 

case 2: 6

正反兩遍求出hash值,然後列舉點向兩邊二分求出最大長度

#include

#include

#include

#define ull unsigned long long

using

namespace std;

int l, r, mid, t, len, ans;

ull c[

1000050

], z[

1000050

], f[

1000050];

char s[

1000050];

void

work()

else

r = mid -1;

} l =0;

r =(len >>1)

+1;if

(z[i]

- z[i -1]

*131

== f[i +1]

- f[i +2]

*131

) ans =

max(ans,2)

;while

(r >= l)

else

r = mid -1;

}}printf

("case %d: %d\n"

, t, ans);}

intmain()

t =1;

while

(s[0]!=

'e')

}}

YbtOJ高效高階 貪心 2 雷達裝置

ybtoj高效高階 貪心 2 有n nn個建築物,第i ii個建築物在笛卡爾座標系上的座標為 xi yi x i,y i xi y i 你需要在x xx軸上安裝一些雷達,每個雷達的偵察半徑均為d dd 要求每個建築物都至少被乙個雷達偵測到,求最少要安裝幾個雷達。3 2 1 2 3 1 2 12每個點...

34 回文子串

總時間限制 1000ms 記憶體限制 65536kb 描述 給定乙個字串,輸出所有長度至少為2的回文子串。回文子串即從左往右輸出和從右往左輸出結果是一樣的字串,比如 abba,cccdeedccc都是回文字串。輸入乙個字串,由字母或數字組成。長度500以內。輸出輸出所有的回文子串,每個子串一行。子串...

34 回文子串

34 回文子串 檢視 提交 統計 提問 總時間限制 1000ms 記憶體限制 65536kb 描述給定乙個字串,輸出所有長度至少為2的回文子串。回文子串即從左往右輸出和從右往左輸出結果是一樣的字串,比如 abba,cccdeedccc都是回文字串。輸入乙個字串,由字母或數字組成。長度500以內。輸出...