поэтому дается "игла" и "в этом есть иголка, но не thisneedle haystack"
Я написал
def find_needle(n,h):
count = 0
words = h.split(" ")
for word in words:
if word == n:
count += 1
return count
Это O (n), но интересно, есть ли лучший подход? возможно, не используя разделение вообще?
Как бы вы пишете тесты для этого случая, чтобы проверить, что он обрабатывает все случаи краев?