A sorting algorithm is a set of instructions that computer programmers use to arrange data in a particular order. The burnt pancake problem is a type of problem where an algorithm must sort elements from largest to smallest by flipping them over, much as a cook would flip a stack of differently-sized pancakes.
What makes designing an algorithm for this problem particularly tricky is that before the sorting is complete, all of the elements must be flipped so that one specific side faces upward. In other words, imagine that you have a stack of pancakes where one side is burnt and one side is a perfect golden brown. In the course of sorting all of the pancakes from smallest to largest, you would obviously want to have all the golden sides facing upward at the end of the sort. The goal of designing an algorithm for the burnt pancake problem, then, is to get all the pancakes stacked from smallest to largest -- with all golden sides facing up -- in the fewest possible number of flips.