Sobes.tech
Middle

¿Es una rebanada monótona? Una función monótona es una función de una variable, definida en un subconjunto de números reales, que no disminuye en todo su dominio o no aumenta en todo su dominio. {1,7} - verdadero {1,1} - verdadero {3,3,1} - verdadero {9,5,1} - verdadero {23,5,23} - falso

sobes.tech AI

Respuesta de la IA

Para determinar si una lista es monótona, es necesario verificar si no es decreciente (cada elemento siguiente no es menor que el anterior) o no es creciente (cada elemento siguiente no es mayor que el anterior).

Ejemplo de una función en Go que comprueba la monotonía de una lista de enteros:

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
}

Ejemplo de uso:

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