Divide - and - Conquer:

Given a function to compute on n inputs, the divide-and-conquer strategy
suggests splitting the inputs into k distinct subsets, 1<k<=n,
yielding k subproblems.  The subproblems must be solved and then a
method must be found to combine subsolutions into a solution of whole.

Smaller and smaller subproblems of the same kind are generated,
eventually producing subproblems that are small enough to be solved
without spitting.

  1. Divide problem into subproblems.
  2. Conquer subproblems by solving recursively.
  3. Combine subproblem solution.