Sobes.tech
Middle

Une tranche est-elle monotone? Une fonction monotone est une fonction d'une variable, définie sur un sous-ensemble des nombres réels, qui est soit non décroissante partout (sur son domaine), soit non croissante partout. {1,7} - vrai {1,1} - vrai {3,3,1} - vrai {9,5,1} - vrai {23,5,23} - faux

sobes.tech IA

Réponse de l'IA

Pour déterminer si une liste est monotone, il faut vérifier si elle est non croissante (chaque élément suivant n'est pas inférieur au précédent) ou non décroissante (chaque élément suivant n'est pas supérieur au précédent).

Exemple de fonction en Go qui vérifie la monotonie d'une liste d'entiers:

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
}

Exemple d'utilisation:

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