次のようなグリッドにリソースを配布する必要がある問題に取り組んでいます。
|A|B|C
|X|C|X
|A|X|X
検索アルゴリズムを組み合わせて、問題の最善の解決策を見つけようとしています。アルゴリズムにより、グリッドで文字列値を処理する方が簡単です。ただし、最初のグリッドが確定したら、いくつかのプロパティにアクセスする必要があります。A がりんご用だとすると、りんごのサイズにアクセスする必要があるかもしれません。
だから私は今、クラスを果物にしました。初期化に必要な果物を追加しています。果物も実行時に追加する必要があるため、列挙することはできません。最初に試したことです。
ソリューションには 10000 回以上の試行が必要になる場合があるため、文字列を相互にチェックする方が、これらすべての文字列をオブジェクトにするよりも高速であると考えました。
今、私はこれを行う方法について頭を悩ませることができません。基本的に、果物を 1 か所で定義し、グリッドで「これはリンゴです」と簡単に言うことができるようにしたいと考えています。
編集:おそらく、それは実際には基本的なOOPの質問です。ユーザーがプログラム内から新しい種類のオブジェクト、たとえば新しい種類の果物を定義できるようにするにはどうすればよいですか?