次の表を考えます。
|A|B|C|
|0|0|1|
|1|0|3|
|1|1|1|
|1|2|1|
|1|3|1|
|1|4|2|
|2|5|1|
A と B が与えられたときに C を決定できる、最も効率的なアルゴリズムとストレージ形式を考え出す必要があります。
+-----------+
| BLACK |
A = 0, B = 0 -> | BOX | -> 1
+-----------+
+-----------+
| BLACK |
A = 1, B = 4 -> | BOX | -> 2
+-----------+
アルゴリズムは、メモリと効率の間の適切なトレードオフを提供する必要があります。私の最初の試みは、A と B からハッシュを作成し、それをマップのキーとして使用することでした。
{
"0.0": 1,
"1.0": 3,
"1.1": 1,
"1.2": 1,
"1.3": 1,
"1.4": 2,
"2.5": 1
}
しかし、それが最善のアプローチであるとは思えません(このようなマップに割り当てられたメモリと、このテーブルには数千の行が含まれる可能性があるため、ルックアップ時間に関して)。
誰かがより良い解決策を教えてもらえますか?