Middle
Écrire une fonction qui vérifie si une chaîne est un palindrome. Un palindrome est une séquence de caractères qui se lit de la même manière dans les deux sens. Vérifier uniquement les caractères de l'alphabet a-zA-Za-яА-Я, sans tenir compte de la casse. Entrée : "isPalindrome" Sortie : false <p> Entrée : "А роза упала на лапу Азора" Sortie : true <p> Entrée : "Is_s_d_+_ssi" Sortie : true
sobes.tech IA
Réponse de l'IA
package main
import ( "fmt" "unicode" )
func isPalindrome(s string) bool { // Filtrons uniquement les lettres et convertissons en minuscules var filtered []rune for _, r := range s { if unicode.IsLetter(r) { filtered = append(filtered, unicode.ToLower(r)) } }
// Vérifions si c'est un palindrome
n := len(filtered)
for i := 0; i < n/2; i++ {
if filtered[i] != filtered[n-1-i] {
return false
}
}
return true
}
func main() { fmt.Println(isPalindrome("isPalindrome")) // false fmt.Println(isPalindrome("А роза упала на лапу Азора")) // true fmt.Println(isPalindrome("Is_s_d_+_ssi")) // true }