DP 로 푼다.

스크린샷 2023-03-06 오후 3.07.25.png

var low = Array(repeating: 1, count: array.count)
var high = Array(repeating:1, count: array.count)
var ans = 0
for k in 1..<array.count {
		for j in 0..<k {
				if array[j] < array[k] {
						high[k] = max(high[k], low[j] + 1)
				} else if array[j] > array[k] {
						low[k] = max(low[k], high[j] + 1)
				} 
		}
		ans = max(low[k], high[k])
}

return ans