Middle
Γράψτε μια συνάρτηση που ελέγχει αν μια συμβολοσειρά είναι παλίνδρομο. Ο παλίνδρομος είναι μια ακολουθία χαρακτήρων που διαβάζεται το ίδιο και από τις δύο κατευθύνσεις. Ελέγξτε μόνο τους χαρακτήρες του αλφαβήτου a-zA-Za-яА-Я, χωρίς να λαμβάνετε υπόψη το ευαίσθητο στην περίπτωση. Είσοδος: "isPalindrome" Έξοδος: false <p> Είσοδος: "Α роза упала на лапу Азора" Έξοδος: true <p> Είσοδος: "Is_s_d_+_ssi" Έξοδος: true
sobes.tech AI
Απάντηση από AI
package main
import ( "fmt" "unicode" )
func isPalindrome(s string) bool { // Φιλτράρουμε μόνο γράμματα και τα μετατρέπουμε σε μικρά var filtered []rune for _, r := range s { if unicode.IsLetter(r) { filtered = append(filtered, unicode.ToLower(r)) } }
// Ελέγχουμε αν είναι παλίνδρομο
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 }