go: add «1813. Sentence Similarity III»

Signed-off-by: Matej Focko <me@mfocko.xyz>
This commit is contained in:
Matej Focko 2024-10-07 20:40:38 +02:00
parent a8567738b8
commit 032ac3b9ae
Signed by: mfocko
SSH key fingerprint: SHA256:icm0fIOSJUpy5+1x23sfr+hLtF9UhY8VpMC7H4WFJP8

View file

@ -0,0 +1,29 @@
package main
import "strings"
func areSentencesSimilar(sentence1 string, sentence2 string) bool {
checkSimilar := func(words1, words2 []string) bool {
left := 0
for left < len(words1) && words1[left] == words2[left] {
left++
}
right1, right2 := len(words1)-1, len(words2)-1
for right1 >= 0 && words1[right1] == words2[right2] {
right1--
right2--
}
return right1 < left
}
words1 := strings.Split(sentence1, " ")
words2 := strings.Split(sentence2, " ")
if len(words1) > len(words2) {
words1, words2 = words2, words1
}
return checkSimilar(words1, words2)
}