2009-05-16 16 views
0

私の数学は悪い、本当に悪いです。それでは、私はこの質問にフレーズすることにも苦労していますが、ここでは行きます。帰りのルートの組み合わせ数は可能です

状況は列車旅行であり、作業するアレイが4つあります。

Leaving_Stations Arriving_Stations

Leaving_Dates Returning_Dates

それでは、あなたは片道ルートで唯一の興味とあなたがありますどのように多くのルートの組み合わせを把握する必要があるとしましょう。

possible_routes = (leaving_stations x arriving_stations) x leaving_dates 

しかし、私は帰りの旅行をしたい場合、どのように多くの組み合わせがあるのか​​考え出すにはどうすればいいですか?

UPDATE ::

かでしょう。この作品?

possible_routes =((leaving_stationsのXのarriving_stations)X leaving_dates)×(leaving_dates X returning_dates)

答えて

1

まあ、答えはそれはあなたの配列名とは全く明らかではないです:それです。

  • 残し日付
  • 戻りその後、我々がここで説明するのビットを行うことができます残し駅
  • 到着駅

  • 日付:我々を仮定し

    は4つの配列を持っています。表記| x |を使ってみましょう。配列[x]の基数(要素の数)を表すために、| Dates |あなたが残すことができる日付の合計数です。

    その後|日付の変更| * |駅を出る| * |到着する駅|通訳するには、出発日を選んでから、出発する駅を選び、到着する駅を選び、可能な限りすべて行う。だから、これはあなたが一方的な旅行を求めているようだ。

    実際には、これは現実世界の問題であると仮定していますので、6月20日にサウサンプトンからヨークシャーへ出発することを選んだとしましょうあなたが家に帰りたいと思っていることを意味しています。

    私たちが往復を計画できる方法の総数は、上記のように一方向旅行を計画してから、返却日を選択することです。 * |駅を出る| * |到着する駅| * |返却日|。最初の3つの条件は上記のように片道旅行を選択し、最後の期間はすべての可能な日付から戻る日を選択します。もちろん、私たちが残したもの以外の別の駅に戻るという選択肢があれば、方程式は(|出発日| * |出発駅| * |到着する駅|)*(戻る日| * |出発駅| |出発駅| * |到着駅|)|(帰国日|出発日|出発日|出発日|出発日| * |到着する駅| * |出発する駅|)。

  • 0

    私は私が正しく理解すればわからないんだけど、これは典型的なgraph-routing理論の問題のように思えます。 Minimum PathまたはA*のアルゴリズムを見ることができます。

    0

    まず、AAルートはそう、間違ったものです:

    possible_routes = 
    (
        leaving_stations x arriving_stations - 
        (leaving_stations [intersection] arrivig_stations) 
    ) x leaving_dates 
    

    交差点操作を使用すると、2つのウェイルートを希望する場合、両方の配列に

    第二の属する要素である、組み合わせは以下のとおりです。

    possible_2way_routes = 
    (
        leaving_stations x arriving_stations - 
        (leaving_stations [intersection] arrivig_stations) 
    ) x 
    leaving_dates x 
    (return_dates that later than leaving dates+route time) 
    

    'leave_dates x(return_datesよりも遅く、ルート時刻を残す)'というのは奇妙なことなので、高い推定値を集計する方が簡単かもしれません。どんな場合でもn possible_2way_routes。最高のカウントはそう、ときにすべてのreturning_dates後でleaving_datesより次のようになります。

    possible_2way_routes <= 
    (
        leaving_stations x arriving_stations - 
        (leaving_stations [intersection] arrivig_stations) 
    ) x leaving_dates x return_dates 
    

    ああ、私は「後でよりルート時刻+日付を残しreturn_dates」を計算する方法を思い出しました。

    for each element of leaving_dates { 
    sum=sum+return_dates that later than ith leaving date+route time} 
    

    「ルート時間」の問題がまだある、しかし...

    +0

    この回答はより明確に書式設定できます。各式を右にスクロールして読み終え​​る必要があるときを理解するのは難しいです。方程式を複数の行に分割するか、1つの文字変数を使用して異なる数量を表現してみてください。 –

    +0

    今は良いですか?投票する! – Imaskar

    関連する問題