【解決方法】限られた地下鉄サーファー


Nidhi は Subway Surfer ゲームの代替バージョンを作成しました。 彼女の新しいバージョンは、無限の長さの線路ではなく、長さ N + 1 の線路に制限されています。元のゲームと同様に、この代替バージョンにも 3 つのレーンがあります。
トラックには、0 から N までの範囲のポイントがあります。
3 車線には、いくつかのポイントで、特定のマンホールが存在します。 ここで、これらのマンホールを避けるために、プレイヤーは横にジャンプしてレーンを切り替える必要があります。これは、ポイント i + 1 のレーンにマンホールがない場合、同じレーンの i から (i + 1) 番目のポイントに移動できないためです。
長さ N + 1 の配列 manholes が与えられます。manholes[i] は、ポイント i に存在するマンホールがどの車線にあるかを示しています。 例えばマンホールなら[2] = 1 の場合、これは線路のポイント 2 で、レーン 1 にマンホールが存在することを意味します。
プレイヤーが線路上のポイント 0 からポイント N に到達するために必要な車線変更の最小回数を求めてください。
ノート:
マンホールなら[i] = 0 の場合、これはポイント i について、どの車線にもマンホールが存在しないことを意味します。
マンホール[0] そしてマンホール[N] は常に 0 です。
入力フォーマット:
入力の最初の行には、テスト ケースの数を表す整数 T が含まれます。
各テスト ケースの最初の行には、整数 N が含まれています。
各テスト ケースの 2 行目には、マンホールを表す N + 1 個のスペースで区切られた整数が含まれます。[i].
私たちのプレイヤーは常に中央レーンから始めます。
`制約:
マンホールの長さ == n + 1
1 <= t <= 100
1 <= N <= 5 * 10^4
0 <= マンホール[i] <= 3
マンホール[0] == マンホール[n] == 0
出力フォーマット:
ポイント 0 から N に到達するための車線変更の最小数。
サンプル入力:
4
0 1 2 3 0
サンプル出力:
2
説明:
プレーヤーがたどる最適なパスを下の画像に示します。

[image for reference ](https://i.stack.imgur.com/Os2nS.png)

ポイント 0 からポイント N まで最適に到達するには、アウト プレイヤーが少なくとも 2 回レーンを変更する必要があることは明らかです。

以下のサンプル テスト ケースを提供します。

カスタム テスト ケース
1
4
0 1 2 3 0

実行する

結果
あなたのアウトプット
2

期待される出力
2

カスタム テスト ケース
1
9
0 3 0 2 0 2 1 2 2 0

実行する

結果
あなたのアウトプット
0

期待される出力
1

カスタム テスト ケース
3
1
0 0
2
0 2 0
3
0 3 3 0

実行する

結果
あなたのアウトプット
0
0
0

期待される出力
0
1
0

カスタム テスト ケース
2
2
0 0 0
9
0 1 1 1 1 3 3 3 2 0

実行する

結果
あなたのアウトプット

1
2

期待される出力
0
1

私が試したこと:

テストケースを試みましたが、いくつかは間違っていました。これについては助けが必要です。ありがとうございました

解決策 1

私たちは立ち往生している人々を喜んで助けますが、それは私たちがあなたのためにすべてをするためにここにいるという意味ではありません! 私たちがすべての作業を行うことはできません。あなたはこれに対して報酬を受け取っているか、またはそれはあなたの成績の一部であり、私たちがあなたのためにすべてを行うことはまったく公平ではありません.

だから私たちはあなたが仕事をする必要があり、あなたが行き詰まったときにあなたを助けます. それは、あなたが提出できる段階的な解決策を提供するという意味ではありません!
現在の状況と、プロセスの次のステップを説明することから始めます。 次に、その次のステップを機能させるために何を試みたか、またその際に何が起こったかを教えてください。

開始するのに問題がある場合は、これが役立つ場合があります。 問題を解決するためのコードの書き方、初心者向けガイド[^]

コメント

タイトルとURLをコピーしました