Sobes.tech
Middle

Napisz funkcję, która sprawdza, czy ciąg znaków jest palindromem. Palindrom to sekwencja znaków, która czytana od początku do końca i od końca do początku jest taka sama. Sprawdzaj tylko znaki alfabetu a-zA-Za-яА-Я, nie uwzględniaj wielkości liter. Input: "isPalindrome" Output: false <p> Input: "А роза упала на лапу Азора" Output: true <p> Input: "Is_s_d_+_ssi" Output: true

sobes.tech AI

Odpowiedź od AI

package main

import ( "fmt" "unicode" )

func isPalindrome(s string) bool { // Filtrujemy tylko litery i zamieniamy na małe litery var filtered []rune for _, r := range s { if unicode.IsLetter(r) { filtered = append(filtered, unicode.ToLower(r)) } }

// Sprawdzamy, czy to 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 }