lc-go/solutions/2/q290/solution.go
2025-12-29 08:46:00 +09:00

30 lines
508 B
Go

package q290
import "strings"
func wordPattern(pattern string, s string) bool {
index := map[byte]string{}
invIndex := map[string]struct{}{}
fields := strings.Fields(s)
if len(fields) != len(pattern) {
return false
}
for i, word := range fields {
if w, ok := index[pattern[i]]; ok {
if w != word {
return false
}
} else {
if _, ok := invIndex[word]; ok {
return false
}
index[pattern[i]] = word
invIndex[word] = struct{}{}
}
}
return true
}
var _ = wordPattern