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 unequalRegister | Usage | Type | Description |
---|---|---|---|
$a0 |
input | address | array one elements |
$a1 |
input | integer | size of array one, in words |
$a2 |
input | address | array two elements |
$a3 |
input | integer | size of array two, in words |
$v0 |
output | integer |
0 = equal, 1 = unequal, 2 = sublist, 3 = superlist |
$t0-9 |
temporary | any | used for temporary storage |
Sign up to Exercism to learn and master MIPS Assembly with 54 exercises, and real human mentoring, all for free.