Middle
Escreva uma função que verifique se uma string é um palíndromo. Palíndromo é uma sequência de caracteres que é lida da mesma forma em ambas as direções. Verifique apenas os caracteres do alfabeto a-zA-Za-яА-Я, sem considerar case-sensitive. Entrada: "isPalindrome" Saída: false <p> Entrada: "А роза упала на лапу Азора" Saída: true <p> Entrada: "Is_s_d_+_ssi" Saída: true
sobes.tech IA
Resposta da IA
package main
import ( "fmt" "unicode" )
func isPalindrome(s string) bool { // Filtra apenas letras e converte para minúsculas var filtered []rune for _, r := range s { if unicode.IsLetter(r) { filtered = append(filtered, unicode.ToLower(r)) } }
// Verifica se é um palíndromo
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 }