LIS problems share a structure: find the longest chain where each element can follow the previous based on some relation. Variants include: strictly increasing, non-decreasing, divisibility chains, 2D (two-dimensional) dominance (envelopes), string predecessor chains.
The DP works for all: for valid predecessors . The binary search works when the relation is a total order. When you see "longest chain" or "maximum elements satisfying pairwise condition", think LIS.