网站收录下降,阿克苏市建设局网站,专业外贸网站建设公司排名,网站rp原型图怎么做E. Block Sequence
dp题,设dp[i]表示i~n之间的数#xff0c;需要最小删除数量 那么每一位数有两种情况#xff0c;设数a[i]#xff1a; 1.被删除#xff1a;dp[i]dp[i1]1,这一位等于上一位的加一。 2.被保留#xff1a;dp[i]min(dp[i],dp[ia[i]1]); #includeiostream…E. Block Sequence
dp题,设dp[i]表示i~n之间的数需要最小删除数量 那么每一位数有两种情况设数a[i] 1.被删除dp[i]dp[i1]1,这一位等于上一位的加一。 2.被保留dp[i]min(dp[i],dp[ia[i]1]); #includeiostream
#includecstring
using namespace std;
const int MAXN2e510;
int dp[MAXN];
//dp[i]表示i~n之间最小删除数量
int main()
{int T;cinT;while(T--){memset(dp,0,sizeof(dp));int n;cinn;int a[n1];for(int i1;in;i) cina[i];for(int in;i1;i--){dp[i]dp[i1]1;if(ia[i]n)dp[i]min(dp[i],dp[ia[i]1]);}coutdp[1]endl;}
}