Given two strings \$ A \$ and \$ B \$ and a positive integer \$ n \$, determine whether \$ B \$ is composed entirely of (possibly overlapping) strict substrings of \$ A \$ of a length of at least \$ n \$.
Test cases
n A B Output
-----------------------------------------
2 abcdefg bcabcdebcdef True
2 abcdefg cdabfg True
4 abracadabra abrabrabrabra True
1 abcdefg ddbfeg True
2 ab abab True
2 bb bbbbb True
5 abcdefghijklmn defghabcdefghi True
2 abcdefg hijklmn False
3 abcdefg bcabcdebcdef False
2 abcdefg ddabfg False
2 ab aba False
2 abcdefg a False
4 abracadabra brabrabrabra False
6 abcdefghijklmn defghabcdefghi False
Rules
- You may assume that both \$ A \$ and \$ B \$ are non-empty; \$ n \ge 1 \$; and \$ A \$ has a length of at least \$ n \$
- You may choose to operate on arrays with elements of any data type or set of values, rather than strings, as long as there are at least 8 distinct values for that element type
- You can output using truthy or falsey values, or any two other disjoint sets of values, to indicate a true or false result
- You may use any sensible I/O format
- Standard loopholes are forbidden
- This is code-golf, so the shortest code in bytes wins
abzaxy
, and b=xyzab
, should that return true or false? I'm guessing the "possibly overlapping" means that is true.... though I think the problem is more interesting if that one is supposed to be false. \$\endgroup\$