Go•valid-mountain-array/solution.go
package main
func validMountainArray(arr []int) bool {
index := 0
for index+1 < len(arr) && arr[index] < arr[index+1] {
index++
}
if index == 0 || index == len(arr)-1 {
return false
}
for index+1 < len(arr) && arr[index] > arr[index+1] {
index++
}
return index == len(arr)-1
}
Python•valid-mountain-array/solution.py
class Solution:
def validMountainArray(self, arr: list[int]) -> bool:
index = class="syntax-number">0
while index + class="syntax-number">1 < len(arr) and arr[index] < arr[index + class="syntax-number">1]: index += class="syntax-number">1
if index == class="syntax-number">0 or index == len(arr) - class="syntax-number">1: return False
while index + class="syntax-number">1 < len(arr) and arr[index] > arr[index + class="syntax-number">1]: index += class="syntax-number">1
return index == len(arr) - class="syntax-number">1
TypeScript•valid-mountain-array/solution.ts
function validMountainArray(arr: number[]): boolean {
let index = class="syntax-number">0;
while (index + class="syntax-number">1 < arr.length && arr[index] < arr[index + class="syntax-number">1]) index += class="syntax-number">1;
if (index === class="syntax-number">0 || index === arr.length - class="syntax-number">1) return false;
while (index + class="syntax-number">1 < arr.length && arr[index] > arr[index + class="syntax-number">1]) index += class="syntax-number">1;
return index === arr.length - class="syntax-number">1;
}