https://blog.dasomoli.org/algorithm-kmp-algorithm/
[Algorithm] KMP algorithm