binary search
dynamic programming
sortings
