**Article:** [Manacher's Algorithm - Finding all sub-palindromes in O(N)](https://cp-algorithms.com/string/manacher.html) **Problem:** <!-- Describe the issue of this article in detail. --> Below line -> `p[i] = max(0, min(r - i, p[l + (r - i)]));` in manacher_odd function, is max(0, ..) check really required? As I tried some examples on paper, it seemed every time, the least value of p[i] = min(r - i, p[l + (r - i)]) is 0, so, can we write directly, `p[i] = min(r - i, p[l + (r - i)]);`