P3399シルクロード

トピックの背景

張銭は138紀元前に、西域への多数のミッションを通過していました。漢王朝と欧米諸国との友好交流を強化します。それ以来、この事業のラクダのキャラバンのチーム旅行への長い道は、彼らはスパイスが、良い馬が私たちの国に渡す中央アジア、西アジア、ヨーロッパ、中国、に高度な技術で、山を越えました。人々は砂漠に荒涼とした煙を見つめたとき、すべては過去の貿易、文化の繁栄の空想を引き起こした......

タイトル説明(トピックのリンク:https://www.luogu.org/problem/P3399

小さなシルクロードの開始と終了点を含む残りの部分への中国からの商品、とハムスター、Nの合計+ 1都市、都市が出発点長安0で、Nの数は、バグダッドの街の終わりです。これは、M日がフィニッシュラインに到達しなければならないよりも、これ以上は必要ありません。一日の時間は、1つの都市から次の都市に連続することができます。街から街へI-1 iの距離Diにあります

我々はすべて知っているように、連続急いは非常に難しいので、少しハムスターは、市内であってもよく、次のオプションを持つことができます。

  • モバイル:街を行進

  • 残り:動かないオリジナルの都市に滞在

砂漠の変更天候天候が非常に悪い場合、前方には多くの困難に遭遇します。私たちは、最初の日のJのM悪天候の(1 <= J <= M)日Cjとによって示される値を入れます。Jマーチング日に市私は、疲労ディ* Cjのを取るときI-1は、市から移動されます。

しかし、少しハムスターはまだオプションを持って、あなたは比較的悪天候を避けることができ、残りは疲労値を消費するつもりはありません。今、彼は消費全体の旅行のどのくらいの疲労最小値を知りたいです。

入力形式

二つの整数N、Mの最初の行

連続した整数N線Djの

M行それぞれの連続した整数Cjと

出力フォーマット

最小の疲労を表す整数

サンプル入力と出力

入力#1
3 5 
10 
25 
15 
50 
30 
15 
40 
30
出力#1
1125

説明/ヒント

__この質問時間1秒、メモリリミット128Mは、新しい評価機速度はNOIP評価機の速度に近いため、問題によって引き起こされる影響に一定の配慮。__

残りの1日目

2日目0-> 1疲労値10×30 = 300。

デイ31-> 2疲労値25×15 = 375。

4日目休憩

15×30 = 450の日52-> 3疲労値。

1≦N≦M≦1000年

1≦ディ、1000年CI≦

分析:明らかに問題がDPで、[i] [j]が最小疲労市のIに到達するために、j番目の日を示しますfは日数がタイトル疲労は、二つのパラメータ、配列fの導入を持っています

状態方程式を得ることができる:F [I] [J] =分(F [I] [J-1] + 0、F [I-1] [J-1] + C [j] * D [I])。

初期化がある:F [i]は[I] = F [I-1] [J-1] + C [I] * D [i]は、

要約F [N]で[m]は答えは

次のようにC ++のコードは次のとおりです。

#include <ビット/ STDC ++ H.>
 使用して 名前空間STD;
 INT D [ 1000年 + 5 ]、C [ 1000年 + 5 ]; // D:距離、C:天気
INT F [ 1000年 + 5 ] [ 1000年 + 5 ] ; // J i日疲労都市における最小                        
INT のmain()
{ 
    int型 N-、M; // N市、M日 
    CIN >> N- M;
     // 疲労ジ* Cjと、I-1は、都市からの移動を表し、私が向かったj番目の日である
    ためには、int型 I =を1。 ;私は<= N-;私は++)>> CIND [i]は、
    以下のためにint型 I = 1 ; I <= M; iは++)CIN >> C [i]は、
    
    // F [I] [J] =分(F [I] [J-1] + 0、F [I-1] [J-1] + C [j] * D [I])。
    以下のためにint型 i = 1 ; iは= N <; iは++ ){ 
        F [i]は[I] = F [I- 1 ] [I- 1 ] + C [I] * D [i]は、// 连续赶路不休息
        のためにINT J = iは+ 1、J <= Mであり、j ++ ){ 
        F [I] [J] =分(F [I] [J- 1 ] + 0、F [I- 1 ] [J- 1 ] + C [j] * D [I])。    
        } 
        
    }
    COUT << F [n]は[M]。
    リターン 0 ; 
}

 

おすすめ

転載: www.cnblogs.com/cstdio1/p/11330961.html
おすすめ