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.

BRabbit | 121 |

shalinigoyal | 118 |

Radhe_Radhe_^^ | 118 |

vampire123 | 116 |

ArijitSur | 108 |

vampire123 | 1044 |

xbuttercupx | 897 |

Raunaq Singh 3 | 868 |

agness | 861 |

nishant.ns19 | 861 |

blackshadows | 5331 |

Ibrahim Nash | 5219 |

akhayrutdinov | 5111 |

mb1973 | 4822 |

Quandray | 4499 |

Login to report an issue on this page.