CSES 1747 - Pyramid Array
1.0s 512M給定一個包含 \(n\) 個相異整數的陣列。每次操作可以交換任意相鄰的兩個值。
你想要把這個陣列變成一個金字塔陣列。也就是說,最終的陣列必須先遞增後遞減;也允許最終陣列只是遞增或只是遞減。
請問最少需要幾次操作?
輸入格式
第一行輸入一個整數 \(n\):陣列的大小。
第二行有 \(n\) 個相異整數 \(x_1,x_2,\dots,x_n\):陣列的內容。
輸出格式
輸出一個整數:最少的操作次數。
範例輸入 1
4
2 1 5 3
範例輸出 1
1
說明:你可以交換前兩個值,得到金字塔陣列 \([1,2,5,3]\)。
限制
- \(1 \le n \le 2 \cdot 10^5\)
- \(1 \le x_i \le 10^9\)
題目來源
題目來自 CSES Problem Set(Antti Laaksonen),授權 CC BY-NC-SA 4.0;本頁為翻譯,以相同授權分享。
登入後即可撰寫程式並提交評測。
登入