Sobes.tech
Middle

Scrivi una funzione che verifica se una stringa è un palindromo. Un palindromo è una sequenza di caratteri che si legge ugualmente in entrambe le direzioni. Verificare solo i caratteri dell'alfabeto a-zA-Za-яА-Я, senza considerare la sensibilità alle maiuscole/minuscole. Input: "isPalindrome" Output: false <p> Input: "А роза упала на лапу Азора" Output: true <p> Input: "Is_s_d_+_ssi" Output: true

sobes.tech AI

Risposta dell'AI

package main

import ( "fmt" "unicode" )

func isPalindrome(s string) bool { // Filtriamo solo lettere e convertiamo in minuscolo var filtered []rune for _, r := range s { if unicode.IsLetter(r) { filtered = append(filtered, unicode.ToLower(r)) } }

// Verifichiamo se è un palindromo
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 }