怎么全抄我的?那我就来讲一下思路吧。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
思路
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
首先,我们要想:如何达成最小操作次数?
很简单,如果一个最小的数在中间,那么操作次数一定不是最小的,因为操作次数一定会大于这个数组里最大的数。
接着,我们把这个思路优化一下:如果这个数组是一个“山谷”数组,那么输出NO。
山谷数组是什么?就是两边大,中间小的数组。
所以,用for循环枚举不是山谷数组的可能性:
1. 上升或平移,如“/”或者“/--”。
2. 下降或平移,如“\”或者“\--”。
3. “尖脑袋”型,如“^”。
只要满足这三条里任意一条,就是YES,如果都不满足,那么一定是“V”字型的山谷数组,也就是NO。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
好啦,接下来我放出部分重要代码,希望大家不要抄袭:
打字过于匆忙,如有错误,请及时指正,谢谢!