2つの配列AとBが与えられたとき、次のどれに当てはまるかを判定します。
Aが配列Bと等しい。またはAが配列Bを含んでいる(AはBのスーパーリスト)。またはAが配列Bに含まれている(AはBのサブリスト)。またはAとBは等しくない具体的には、2つの配列が同じ順序で同じ値を持っていれば、配列Aは配列Bと等しいです。配列Aが、Bと等しい連続した値の部分列を含んでいれば、AはBのスーパーリストです。配列Bが、Aと等しい連続した値の部分列を含んでいれば、AはBのサブリストです。
例:
A = []とB = [](どちらの配列も空)の場合、AとBは等しいですA = [1, 2, 3]とB = []の場合、AはBのスーパーリストですA = []とB = [1, 2, 3]の場合、AはBのサブリストですA = [1, 2, 3]とB = [1, 2, 3, 4, 5]の場合、AはBのサブリストですA = [3, 4, 5]とB = [1, 2, 3, 4, 5]の場合、AはBのサブリストですA = [3, 4]とB = [1, 2, 3, 4, 5]の場合、AはBのサブリストですA = [1, 2, 3]とB = [1, 2, 3]の場合、AとBは等しいですA = [1, 2, 3, 4, 5]とB = [2, 3, 4]の場合、AはBのスーパーリストですA = [1, 2, 4]とB = [1, 2, 3, 4, 5]の場合、AとBは等しくありませんA = [1, 2, 3]とB = [1, 3, 2]の場合、AとBは等しくありません| レジスター | 用途 | 型 | 説明 |
|---|---|---|---|
$a0 |
入力 | アドレス | 配列1の要素 |
$a1 |
入力 | 整数 | 配列1のサイズ(ワード単位) |
$a2 |
入力 | アドレス | 配列2の要素 |
$a3 |
入力 | 整数 | 配列2のサイズ(ワード単位) |
$v0 |
出力 | 整数 |
0 = 同じ、1 = 同じでない、2 = 部分リスト、3 = 上位リスト |
$t0-9 |
一時 | 任意 | 一時的な保存に使います |