the simplest case I can think of
reduce the size of problem on each step
find the largest square that can fill 1440 x 960
abstraction: rectangular
base(simplest): 1:2(height : width)
recursive: remove the squares with short side length as many as possible
1440 x 960 -> 480 x 960
answer: 480