Problem1076--[视频]动态规划入门(中链式3:最大的算式)

1076: [视频]动态规划入门(中链式3:最大的算式)

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 2  Solved: 2
[Status] [Submit] [Creator:]

Description

【问题描述】
        给出N个数字,不改变它们的相对位置,在中间加入若干个乘号和若干个加号,(括号随便加)使最终结果尽量大。
        因为乘号和加号一共就是N-1个了,所以恰好每两个相邻数字之间都有一个符号。
        例如:N=5,K=2,5个数字分别为1、2、3、4、5,可以加成:
                1*2*(3+4+5)=24
                1*(2+3)*(4+5)=45
                (1*2+3)*(4+5)=45
                ……
【输入格式】
        第一行为两个有空格隔开的整数,表示N和K(K表示至多加入的乘号的个数,不一定要求刚好加K个乘号),其中(2<=N<=15, 0<=K<=N-1)。
        第二行为 N个用空格隔开的数字(每个数字在0到9之间)。
【输出格式】
        输出文件仅一行包含一个整数,表示要求的最大的结果
【样例输入】
5 2
1 2 3 4 5
【样例输出】
120
【数据提示】(1+2+3)*4*5=120

HINT

 

Source/Category