http://www.spoj.com/problems/LSORT/这是SPOJ 一个问题它指出SPOJ DP lsort方法
你是因为对n和无重复1之间的n个数字的排列。 任务是按照升序排列该排列。还有另一个排列Q,我们从给定的排列中插入元素P.
你必须执行N个步骤来排序P.在第i步中,P有N-i + 1个元素,Q有i-1个元素,你必须从P中选择一些第x个元素(来自N-i + 1个可用元素),并将它放在Q的左边或右边。这一步的成本等于x * i。总成本是各个步骤的总和。在N步之后,Q必须是递增顺序。你的任务是降低总成本。
输入
输入文件的第一行为T(T≤10),测试用例的数目。然后描述T测试用例。每个测试用例的描述由两行组成。第一行包含一个整数N(1≤N≤1000)。第二行包含N个不同的整数,从集合{1,2,...,N},N元件排列P.
输出
对于每组测试程序应该写一行,将含有单个整数 - 排序的最小总成本。
现在我已经想出了dp 我的递归关系表明,为了从具有值i的元素获得最优值,我将不得不在前面插入$ i $或在后面插入$ j $。
插入我在前面= DP费用第[i + 1] [j]的 +加入我在前面
成本插入Ĵ在背面= DP [的元件的成本i] [j-1]添加单元j在背面
的+ 成本,我必须采取最小的these.answer将DP [1] [n]的
for(l=1;l<=n;l++) //length of current permutation Q
{
for(i=1;i<=n-l+1;i++) //starting value of permutation Q
{
j=i+l-1; //ending value of permutation Q
dp[i][j]=min(dp[i+1][j]+l*xi,dp[i][j-1]+l*xj);//chosing wether to insert i at start or j at end
}
}
这里XI =元件我从置换的开始P.
和Yi =从置换的开始P.元件Ĵ的指数指数
ANS将DP [1 ] [N]
但我无法弄清楚xi和XJ 请帮