Step 1: Start with first element, LIS length at index 0 is 1
LIS lengths: [1, _, _, _, _, _, _, _]
Why: Each element alone is a subsequence of length 1
Step 2: Check element 22 at index 1: 22 > 10, so LIS at 1 is LIS at 0 + 1 = 2
LIS lengths: [1, 2, _, _, _, _, _, _]
Why: 22 can extend the subsequence ending at 10
Step 3: Check element 9 at index 2: 9 is not greater than 10 or 22, so LIS at 2 is 1
LIS lengths: [1, 2, 1, _, _, _, _, _]
Why: 9 starts a new subsequence since it can't extend previous ones
Step 4: Check element 33 at index 3: 33 > 10 (LIS 1), 33 > 22 (LIS 2), 33 > 9 (LIS 1), max LIS before is 2, so LIS at 3 is 3
LIS lengths: [1, 2, 1, 3, _, _, _, _]
Why: 33 extends the longest subsequence ending before it
Step 5: Check element 21 at index 4: 21 > 10 (LIS 1), 21 < 22, 21 > 9 (LIS 1), max LIS before is 1, so LIS at 4 is 2
LIS lengths: [1, 2, 1, 3, 2, _, _, _]
Why: 21 extends subsequence ending at 10 or 9 but not 22
Step 6: Check element 50 at index 5: 50 > 10 (1), 50 > 22 (2), 50 > 9 (1), 50 > 33 (3), 50 > 21 (2), max LIS before is 3, so LIS at 5 is 4
LIS lengths: [1, 2, 1, 3, 2, 4, _, _]
Why: 50 extends the longest subsequence ending before it
Step 7: Check element 41 at index 6: 41 > 10 (1), 41 > 22 (2), 41 > 9 (1), 41 > 33 (3), 41 > 21 (2), 41 < 50, max LIS before is 3, so LIS at 6 is 4
LIS lengths: [1, 2, 1, 3, 2, 4, 4, _]
Why: 41 extends the longest subsequence ending before it but less than 50
Step 8: Check element 60 at index 7: 60 > all previous, max LIS before is 4, so LIS at 7 is 5
LIS lengths: [1, 2, 1, 3, 2, 4, 4, 5]
Why: 60 extends the longest subsequence ending before it
Result: LIS lengths: [1, 2, 1, 3, 2, 4, 4, 5]
Longest Increasing Subsequence length = 5