1
列車を妨害して遅く走らせる[終了]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新する Code Golf Stack Exchangeのトピックになるようにします。 閉じた3年前。 「アラビアバザールに行って、恋に落ちたプレゼントを買いたいと思っています。しかし、到着が遅すぎると、すべての店が閉まってしまい、何も買えなくなります。私?」 目標:すべての店舗が閉鎖される前に、ノースリッチモンドストリートから少年をアラビアに連れて行きます。 実際の目標:店が閉まる前に少年がアラビアに到着しないようにしてください。 プログラムは、次の形式で入力を受け取ります。 <time> <map> どこ <time>少年が旅行に費やすことができる最大時間(分単位)です。正の整数です。 <map> 電車が通ることができるルートのグラフです。 グラフの形式は次のとおりです。 各ステートメントはセミコロンで終了します。 マップ内のノード(スイッチを表す)は、単一の小文字を使用して表されます。 ノード間のパスは、構文a,X,bで表されます。ここXで、はパスの重みを表す整数です。パスの重みは、列車がこれらの2つのノードを通過するのにかかる時間(分単位)です。 アラビアはで表されa、ノースリッチモンドストリートはで表されますn。 すべてのパスは双方向です。 たとえば、このグラフ(パスが双方向のふりをします): ウィキメディア・コモンズ経由のArtyom Kalininによる画像。CC BY-SA 3.0ライセンスの下で使用されます。 次のようにグラフ表記に記録されます。 a,4,b;a,2,c;b,5,c;b,10,d;c,3,e;e,4,d;d,11,f; この入力には、 nため、無効な入力であることに。無効な入力が与えられた場合、プログラムは何でも実行できます。 入力例を次に示します。 21 n,4,b;n,2,c;b,5,c;b,10,d;c,3,e;e,4,d;d,11,a; (これは、上の画像とa置き換えられn、f置き換えられたグラフと同じグラフです。aです)。 少年はから取得する必要がありますnへのa21分以内。彼がルートを取る場合n-> c-> e-> d-> a、彼は20分でそこに着きます。ノードのコンマ区切りリストとしてそのルートを表すことができます。 n,c,e,d,a 一方、ルートn-> b-> c-> e-> d-> aでは、少年は27分かかりますが、これは間に合いません。このルートを次のように表すことができます。 n,b,c,e,d,a …