Middle
Kesma monotonmi yoki yo'qligini? Monoton funktsiya — bu bir o'zgaruvchili funktsiya bo'lib, u haqiqiy sonlar to'plamida aniqlangan bo'lib, u har doim (o'zining aniqlash doirasida) kamaymaydi yoki har doim oshmaydi. {1,7} - ha {1,1} - ha {3,3,1} - ha {9,5,1} - ha {23,5,23} - yo'q
sobes.tech AI
AIdan javob
Bir ro'yxat monoton bo'lib-emasligini aniqlash uchun, uni yoki kamaymaydigan (har bir keyingi element oldingi elementdan kichik emas) yoki kamaymaydigan (har bir keyingi element oldingi elementdan katta emas) ekanligini tekshirish kerak.
Go tilida butun sonlar ro'yxatining monotonligini tekshiradigan funktsiya misoli:
func isMonotonic(nums []int) bool {
if len(nums) <= 1 {
return true
}
increasing := true
decreasing := true
for i := 1; i < len(nums); i++ {
if nums[i] > nums[i-1] {
decreasing = false
}
if nums[i] < nums[i-1] {
increasing = false
}
}
return increasing || decreasing
}
Foydalanish misoli:
fmt.Println(isMonotonic([]int{1,7})) // true
fmt.Println(isMonotonic([]int{1,1})) // true
fmt.Println(isMonotonic([]int{3,3,1})) // true
fmt.Println(isMonotonic([]int{9,5,1})) // true
fmt.Println(isMonotonic([]int{23,5,23})) // false