A subsequence keeps the relative order but can skip elements. From [1, 2, 3, 4, 5], you can get [1, 3, 5] by skipping 2 and 4. You can get [2, 4] by skipping the others. Contrast with subarray: a subarray must be contiguous. [2, 3, 4] is a subarray of [1, 2, 3, 4, 5], but [1, 3, 5] is not.
This distinction matters. Subarray problems often use sliding window or prefix sums. Subsequence problems need DP (dynamic programming) because you're making skip-or-keep decisions at each position.