package main import ( "fmt" "reflect" "sort" ) func scan() (A string, B string) { fmt.Scan(&A) fmt.Scan(&B) return } func strConvertToRune(s string) (r []rune) { for _, runeVal := range s { r = append(r, runeVal) } return } func main() { A, B := scan() // A, B := "dog", "god" runeA := strConvertToRune(A) runeB := strConvertToRune(B) sort.Slice(runeA, func(i, j int) bool { return runeA[i] > runeA[j] }) sort.Slice(runeB, func(i, j int) bool { return runeB[i] > runeB[j] }) if reflect.DeepEqual(runeA, runeB) { fmt.Print("YES") } else { fmt.Print("NO") } }