整数数组如果是单峰的,满足:
·第一部分一开始就在严格增加
·第二部分此后它是恒定的
·此后第三部分,它将严格降低
第一个部分(增加)和最后一部分(减少)可能不存在。允许这两部分不存在。
例如,以下三个数组是单峰的:[5,7,11,11,2,1],[4,4,2],[7],但以下三个数组不是单峰的:[5,5,6,6,1],[1,2,1,2],[4,5,5,6]。
编写一个程序,检查数组是否是单峰的。
样例输入1:
6
1 5 5 5 4 2
样例输出1:
YES
样例输入2:
5
10 20 30 20 10
样例输出2:
YES
样例输入3:
4
1 2 1 2
样例输出3:
NO
样例输入4:
7
3 3 3 3 3 3 3
样例输出4:
YES
样例输入5:
6
5 5 5 4 4 4
样例输出4:
NO
输入格式
第一行包含整数n(1≤n≤100),表示数组中元素的个数。
第二行包含n个整数a1,a2,...,an(1≤ai≤1000),表示数组中的元素。
输出格式
如果给定的数组是单峰的,则打印YES,反之打印NO。
希望能将题解和思路一起告诉我,谢谢大佬们求助。