Middle
Scrieți o funcție care verifică dacă un șir de caractere este un palindrom. Un palindrom este o secvență de caractere care se citește la fel în ambele direcții. Verificați doar caracterele alfabetului a-zA-Za-яА-Я, fără a ține cont de diferența de majuscule/minuscule. Input: "isPalindrome" Output: false <p> Input: "А роза упала на лапу Азора" Output: true <p> Input: "Is_s_d_+_ssi" Output: true
sobes.tech AI
Răspuns de la AI
package main
import ( "fmt" "unicode" )
func isPalindrome(s string) bool { // Filtrăm doar litere și le convertim la litere mici var filtered []rune for _, r := range s { if unicode.IsLetter(r) { filtered = append(filtered, unicode.ToLower(r)) } }
// Verificăm dacă este palindrom
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 }