Given any two lists A
and B
, determine if:
A
is equal to list B
; orA
contains list B
(A
is a superlist of B
); orA
is contained by list B
(A
is a sublist of B
); orA
and B
are unequalSpecifically, list A
is equal to list B
if both lists have the same values in the same order.
List A
is a superlist of B
if A
contains a contiguous sub-sequence of values equal to B
.
List A
is a sublist of B
if B
contains a contiguous sub-sequence of values equal to A
.
Examples:
A = []
and B = []
(both lists are empty), then A
and B
are equalA = [1, 2, 3]
and B = []
, then A
is a superlist of B
A = []
and B = [1, 2, 3]
, then A
is a sublist of B
A = [1, 2, 3]
and B = [1, 2, 3, 4, 5]
, then A
is a sublist of B
A = [3, 4, 5]
and B = [1, 2, 3, 4, 5]
, then A
is a sublist of B
A = [3, 4]
and B = [1, 2, 3, 4, 5]
, then A
is a sublist of B
A = [1, 2, 3]
and B = [1, 2, 3]
, then A
and B
are equalA = [1, 2, 3, 4, 5]
and B = [2, 3, 4]
, then A
is a superlist of B
A = [1, 2, 4]
and B = [1, 2, 3, 4, 5]
, then A
and B
are unequalA = [1, 2, 3]
and B = [1, 3, 2]
, then A
and B
are unequalOne or several of the tests of this exercise have been tagged as :slow
, because they might take a long time to finish. For this reason, they will not be run on the platform by the automated test runner. If you are solving this exercise directly on the platform in the web editor, you might want to consider downloading this exercise to your machine instead. This will allow you to run all the tests and check the efficiency of your solution.
Sign up to Exercism to learn and master Elixir with 57 concepts, 159 exercises, and real human mentoring, all for free.