题解代码: #include<bits/stdc++.h>usingnamespacestd;inti,j,p,n,k;intdp[510][110];// dp[i][p]: 前 i个点,已经插入了 p个自由点后的最长上升子序列。// 举例,若输入的 k = 7// 若 dp[5][2] = 4,表示前 5个点在使用了2个插入点后的最长上升子序列长度为 4,之后最多还有 (7-2)=...