오렌지에 도달할 때까지 div.2 D~F 업솔빙한 내용을 기록할 공간입니다.
Codeforces Round 1035 (Div. 2)
D - Token Removing
dp[i][cnt] := [i:n]의 위치에서 cnt개의 수가 제거되도록 a[i:n]을 정하는 경우의 수
a[i] 제거 여부를 기준으로 나누면
dp[i][cnt] = dp[i + 1][cnt] + dp[i + 1][cnt - 1] * (n - i - (cnt - 1)) * (i + 1)
최종답은 sum(dp[0][0:n])