Huawei ODマシンテスト - 交差点での最短時間問題(Java & JS & Python & C)

質問の説明

道路が市松模様で、各正方形間の距離が等しく、車両が道路の各正方形を通過するのに必要な時間が timePerRoad であると仮定します。

道路の交差点(交差点)には信号機があり、信号の周期T(=lights[row][col])が異なります。

車両は直進、左折、右折が可能ですが、直進と左折は対応する信号機をT時間待つ必要がありますが、右折は待つ必要がありません。

ここで、n * m の道路交差点の信号機の周期と、開始および終了の道路交差点の座標が与えられた場合、車両が 2 つの道路交差点を通過する最短時間を計算します。

で:

  1. 始点と終点の信号機は時間計測されず、交差点はどの方向でも通過可能
  2. n * m の道路交差点を超えることはできず、ジャンプすることもできませんが、エッジも道路です (つまり、lights[0][0] ->lights[0][1] は有効なパスです)

エントリ関数の定義:

/**
 * @param Lights: n*m の道路交差点の各信号機の周期、値の範囲は[0, 120]、n と m の範囲は[1,9] 
 * @param timePreRoad: 2 つの隣接する道路交差点の間市道移動時間、範囲[0,600]
 * @param rowStart: 開始点の行番号
 * @param colStart: 開始点の列番号
 * @param rowEnd: エンドポイントの行番号
 * @par

おすすめ

転載: blog.csdn.net/qfc_128220/article/details/134939367
おすすめ