divide and conquer algorithm pdf