We have N stones of various heights laid out in a row. By taking some consecutive section of the stones, we wish to form a pyramid, where the height of the stones start from 1, increase by 1, until it reaches some value x, then decreases by 1 until it reaches 1 again i.e. the stones should be 1, 2, 3, 4…x – 1, x, x – 1, x – 2 … 1. All other stones not part of the pyramid should have a height 0. We cannot move any of the stones from their current position, however, by paying a fee of 1, we can reduce the heights of the stones. We wish to minimize the cost of building a pyramid. Output the minimum cost to build this pyramid. Assume that always a pyramid would be made of the input elements.

**Input:**

The first line of input contains an integer T denoting the number of test cases. Then T test cases follow. Each test case contains an integer n denoting the size of the array. The last line of input contains n space separated integers forming the array.

**Output:**

Print the minimum cost to build this pyramid.

**Constraints:**

1<=T<=10^5

1<=n<=10^5

1<=a[i]<=10^5

**Example:
Input:**

2

6

1 2 3 4 2 1

3

1 2 1

4

0

Author: Ayush Govil 1

If you have purchased any course from GeeksforGeeks then please ask your doubt on course discussion forum. You will get quick replies from GFG Moderators there.

manishgupta8497 | 607 |

ARUN_PUNDIR | 309 |

vvggfggcg | 300 |

KhyatiSoneji | 272 |

greatpan | 241 |

manishgupta8497 | 607 |

ARUN_PUNDIR | 567 |

KhyatiSoneji | 501 |

Abhimanyu_kumar | 457 |

vvggfggcg | 453 |

blackshadows | 5333 |

Ibrahim Nash | 5219 |

akhayrutdinov | 5111 |

mb1973 | 4929 |

Quandray | 4567 |

Login to report an issue on this page.