1 2 3 4 5
x = sum(f)/f.len/path.len for each needle char get all of its indexes if any of the fragments' next indices are in the set, they can be extended to cover it