3
2D平面上の最長パス
任意の一意の2d整数デカルト座標のセットが提供されます。例:[(0,0)、(0,1)、(1,0)] この座標セットから可能な限り最長のパスを見つけます。ただし、座標を1回だけ「訪問」できるという制限があります。(そして、あなたが始めた座標に「戻る」ことはありません)。 重要: 座標またはその周囲を「通過」することはできません。たとえば、最後の音符の例(長方形)では、Cにアクセスせずに DからAに移動することはできません(これは再訪であり、見つかった長さを無効にします)。これは@FryAmTheEggmanによって指摘されました。 関数入力: 2次元デカルト座標の配列 関数出力:最大長のみ 勝者: 最短のコードが勝ち、ホールドが禁止されません(最も時空効率が悪い) 例 1:この例では、2回「訪問」された座標がない最長パスはA-> B-> O(またはOBA、またはBAO)であり、パスの長さはsqrt(2)+ 1 = 2.414です。 2:上記のこのケースでは、座標が2回「訪問」されていない最長パスはABOC(および明らかにCOBA、OCABなど)であり、示されている単位正方形の場合、sqrt(2)+ sqrt(2)+ 1 = 3.828。 注:これは、前の2つの例ほど簡単ではない追加のテストケースです。これは、6つの座標から形成される長方形です。 ここで、最長パスはA-> E-> C-> O-> D-> Bです。これは8.7147です。 (可能な最大の対角線が通過し、エッジが通過しなかった)