Problem title
Difficulty
Avg time to solve

Two Squares
Moderate
30 mins
Hurdle Game
Easy
10 mins
Find the maximum element in the array after update operations.
Moderate
15 mins
Minimum Distinct Labels
Moderate
15 mins
Minimum time to cross all checkpoints
Hard
15 mins
Ninja and Infinite Size Array
Easy
15 mins
Special Numbers
Moderate
25 mins
All Prime Numbers less than or equal to N
Moderate
10 mins
MaxFreq_Element
Moderate
15 mins
Maximum Sum Path Of A Binary Tree.
Hard
25 mins

Mining Diamonds

Difficulty: HARD
Contributed By

Problem Statement

There are ‘N’ diamonds in a mine. The size of each diamond is given in the form of integer array ‘A’. If the miner mines a diamond, then he gets 'size of previous unmined diamond * size of currently mined diamond * size of next unmined diamond' number of coins. If there isn’t any next or previous unmined diamond then their size is replaced by 1 while calculating the number of coins.

Vladimir, a dumb miner was assigned the task to mine all diamonds. Since he is dumb he asks for your help to determine the maximum number of coins that he can earn by mining the diamonds in an optimal order.

For example:
Suppose ‘N’ = 3, and ‘A’ = [7, 1, 8]

The optimal order for mining diamonds will be [2, 1, 3].
State of mine -    [7, 1, 8]    [7, 8]    [8]
Coins earned -    (7*1*8) + (1*7*8) + (1*8*1)  = 56 + 56 + 8 = 120
Hence output will be 120.

Input Format:

The first line of the input contains a single integer ‘T’ representing the no. of test cases.

The first line of each test case contains a single integer value, ‘N’, denoting the number of diamonds in the mine.

The second line of each test case contains ‘N’ space-separated integers, denoting the size of the diamonds in the mine.

Output Format:

For each test case, print a single integer value denoting the maximum number of coins that can be earned by mining the diamonds in an optimal order.

Print a separate line for each test case.
Note:
You are not required to print anything; it has already been taken care of. Just implement the function and return the answer.

Constraints:

1 ≤ T ≤ 100
1 ≤ N ≤ 100
0 ≤ A[i] ≤ 100
1 ≤ ΣN ≤ 300

Time limit: 1 Sec
Sample Input 1 :
2
3
7 1 8
2
9 1
Sample Output 1 :
120
18
Explanation For Sample Input 1 :
For First Case - Same as explained in above example.

For the second case - 

‘N’ = 2, and ‘A’ = [9, 1]

The optimal order for mining diamonds will be [2, 1].
State of mine -    [9, 1]    [9]
Coins earned -    (1*9*1) + (1*9*1) = 9 + 9 = 18
Hence output will be 18..
Sample Input 2 :
2
5
1 2 3 4 5
4
1 5 2 8
Sample Output 2 :
110
136
Reset Code
Full screen
copy-code
Console