1154エネルギーのネックレス


今日書いたのは私の第二編の行動規則です.区間の動き規定です.見たところと積み上げるようです.私は他の人から少し勉強しました.この人のです.
http://blog.csdn.net/a351357741/article/details/6493945 私は一回見ました.自分で書いたのですが、アルゴリズムの考えは大体同じです.以下はコードです.
#include
int N;
int a[200*2];
int dp[200*2][200*2];
int main()
{
    scanf("%d",&N);
    int i,j,k;
    int len=2;
    int max;
    int E=0;
    for(i=1;i<=N;i++)
    {
        scanf("%d",&a[i]);
        a[N+i]=a[i];
    }
    for(len=2;len<=N;len++)//len       
    {
        for(i=1;i<=2*N;i++)//       (2*N           )
        {
            j=i+len-1;//j       
            max=0;
            for(k=i;kif(max1][j]+a[i]*a[k+1]*a[j+1])
                max=dp[i][k]+dp[k+1][j]+a[i]*a[k+1]*a[j+1];
            }
            dp[i][j]=max;
            if(Eprintf("%d",E); 
    return 0;
}
簡単ですので、煩わしいです.批判を歓迎します.