CPLib.String
Defined in cp-library@0.12.2
Values
namespace CPLib.String
calc_lcp_array
Type: Std::Array Std::I64 -> Std::String -> Std::Array Std::I64
文字列のLCP arrayを計算する
Returns
長さs.get_size - 1の配列lcpで、lcp.@(i)はs[sa.@(i)..)とs[sa.@(i+1)..)の最長共通接頭辞の長さを表す。
Parameters
sa: 対象の文字列のsuffix arrays: 対象の文字列
calc_lcp_array_any
Type: [a : Std::Eq] Std::Array Std::I64 -> Std::Array a -> Std::Array Std::I64
配列のLCP arrayを計算する
Returns
長さs.get_size - 1の配列lcpで、lcp.@(i)はs[sa.@(i)..)とs[sa.@(i+1)..)の最長共通接頭辞の長さを表す。
Parameters
sa: 対象の配列のsuffix arrays: 対象の配列
calc_suffix_array
Type: Std::String -> Std::Array Std::I64
文字列のsuffix arrayを計算する
AtCoder Libraryのsuffix_arrayの移植です。
Returns
[0, 1, ..., s.get_size) の順列saで、任意のiについてs[sa.@(i)..) < s[sa.@(i+1)..) が成り立つもの
Parameters
s: 対象の文字列
calc_suffix_array_i64
Type: Std::Array Std::I64 -> Std::Array Std::I64
配列のsuffix arrayを計算する
AtCoder Libraryのsuffix_arrayの移植です。
Returns
[0, 1, ..., s.get_size) の順列saで、任意のiについてs[sa.@(i)..) < s[sa.@(i+1)..) が成り立つもの
Parameters
s: 対象の配列
calc_suffix_array_i64_upper
Type: Std::I64 -> Std::Array Std::I64 -> Std::Array Std::I64
配列のsuffix arrayを計算する
AtCoder Libraryのsuffix_arrayの移植です。
Returns
[0, 1, ..., s.get_size) の順列saで、任意のiについてs[sa.@(i)..) < s[sa.@(i+1)..) が成り立つもの
Parameters
s: 対象の配列
calc_z_array
Type: Std::String -> Std::Array Std::I64
文字列のZ-arrayを計算する
Returns
長さs.get_sizeの配列zで、z.@(i)はs[i..)とs.[0..)の最長共通接頭辞の長さを表す。
Parameters
s: 対象の文字列
calc_z_array_any
Type: [a : Std::Eq] Std::Array a -> Std::Array Std::I64
配列のZ-arrayを計算する
Returns
長さs.get_sizeの配列zで、z.@(i)はs[i..)とs.[0..)の最長共通接頭辞の長さを表す。
Parameters
s: 対象の配列