https://mytecharm.com.co/post/master-coding-interviews-part-2-two-pointers-pattern--9jbu9l