参加している Java コースの座席システムを構築する必要があります。
必要な座席数を考えると、システムはホールで最適な位置を指定する必要があります。
最良の位置とは、座席が互いにできるだけ近く、中央列にできるだけ近くなければならないことを意味します.
さて、いくつかの定義:
座席間の距離 - 2 つのセルを分離するマトリックス内のセルの最小数。たとえば、セル [3,3] と [2,2] の間の距離は 1 です。
私は再帰的なバックトラック関数を実行して、可能なすべての位置のリストを取得することを考えました。これを繰り返し、すべての位置間の距離とすべての座席の中央列からの距離によって評価します。
このソリューションは非常に非効率的です。誰かがより良いアイデアを持っていますか?