divide and conquer algorithm notes pdf