题解 | 合唱队形
合唱队形
https://www.nowcoder.com/practice/0045cd3e39634a66ada63c2adeb49234
import sys n = int(input()) arr = list(map(int,input().split())) rarr = arr[::-1] dpn = [1 for _ in range(n)] dpm = [1 for _ in range(n)] for i in range(1,n): for j in range(i): if arr[i] > arr[j]: dpn[i] = max(dpn[i],dpn[j]+1) for i in range(1,n): for j in range(i): if rarr[i] > rarr[j]: dpm[i] = max(dpm[i],dpm[j]+1) dp = result = [x + y for x, y in zip(dpn, dpm[::-1])] res = (n+1)-max(dp) print(res)