トレーニングキャンプ9日目2020年3月9日、動的プログラミング(D)

9日目2020年3月9日のトレーニング

ダイナミックプログラミング(D)

1.HDU-2196

ツリーに、n個のノードが存在し、ノード間の右辺の値は、定義された距離どこまで説明した各ノード尋ねる最も遠いノード:ツリー径が最も2つのツリーです右端指します。

問題の解決策

1を探している:Vを見つけ、その後、wがVから最も遠い点を見つけるために、最も遠く彼から離れて、ポイントをuと任意のポイントを取る(\(V、W))\直径。
2を求めて:メンテナンスDP [U] [0/1] U Uエンドポイントのサブツリー内にある最長パス/時間に長い道のりを、答えがdp [U] [0] +である DP [U] [1]。

また、樹木のためにその最遠点上の任意の点は直径の2点間でなければならない、定理を持っています。そのため、3つのDFSの複雑さは
発見のための学校の方法が有用であることが証明して1後の後に自分自身のため見ることができます。https://blog.csdn.net/u011426016/article/details/89164896

2.P1077置か花

暁明の新しくオープンしたフラワーショップ、顧客を引き付けるために、彼は、花屋の前での総花の行を入れたいと思った\(M \)ポット。顧客の嗜好を調査することにより、暁明は、お客様のお気に入りの一覧です\(N \)からの花、(1 \)\(\ n)は\ラベルを。ドアでより花の規定を表示するために(iは\)\花が超えることができない(a_iを\)\の大きい順に小さいから、ラベルの種類を有する花や花の基礎を置かれたとき流域、同じ花が一緒に配置されそれらを設定します。
計算は、どのように多くの異なるプログラム、合計は花を置きます。

問題の解決策

この問題は、実際に最も簡単です
、私は前に取ったF [i]の[j]の手段(\ I)\花、取った\(J \) 鉢植えのスキームを

f[i][j]+=f[i-1][j-k](0<=k<=ai)

剰余を忘れないでください

3.U53204選択科目強化版

(オリジナルP2014の選択科目)
https://www.luogu.com.cn/problem/U53204

今、そこに\(N \)コース、各コース各コースか直接の前提条件(コースがあること、前提条件コースBであれば、唯一の完成学校のカリキュラムがあるためにクレジットがある\(\テキストAは\ )、コースを学ぶためには、\(\テキストB \) )。選択中のこれらのコースの学生\(\テキストM \)学ぶためのコース、そして最大のクレジットはどのくらいです取得するために彼に尋ねましたか?

問題の解決策

ツリーリュックO(nm)を実践して
ロサンゼルスから説明バレーを
https://www.luogu.com.cn/blog/P6174/soluン、p2014

4. P1091コーラスの形成

[タイトル]表面を補完します

問題の解決策

最も長いシーケンスの上昇と最も長いシーケンスの低下を探していることはすることができます。

5.POJ1651

乗算ゲームは、ラインカード上で行われます。各カードには、正の整数が含まれています。そのスコアは、その左に番号の数を乗じて、右、最初のものと最後のカードを取ることは許されないと、各移動では、プレイヤーは、カードを取り出しました。最後の動き、2枚のだけのカードの後。あなたの目標はポイントと最小値を作ることです。\(N \ル200 \)

問題の解決策

DP [I] [J]私〜jを得たゲームを最大限に活用する乗算部からの値を表しています。もちろん3選択の余地の時間の長さが、真ん中を取ります。
そして、残りの症例ができること:再帰左側と右側の番号の最後の列挙を取る、明らかに最後の乗車アップは、国境や最終的な数についてです。

6.HDU5115

\(N \)オオカミ、すべての攻撃は、オオカミを殺すことができるが、それはこのオオカミになります\(\テキストA \)攻撃とそれに隣接する2匹の狼\(\テキストAを\)
与えられた(A、B \)\、負傷した最小のプログラムを見つけます。\(N \ル200 \)

問題の解決策

全体の大きな問題超えるDP [I] [J]、オオカミによってどのくらいの害の私は〜jの完全な根絶。
そして、明らかに、我々は最後のオオカミの攻撃、再帰については、最後に排除するオオカミを列挙Zhizuoは右手の境界、右境界、独自B aを残されています。
実際には、タイトルの以前のバージョンの性質を変更します

7.P1879

長方形の牧草地を新たに分割されている\(M \) OK \(N \)カラム\((1≤M≤N≤12,1≤12である)\) 各セルは、土地の正方形です。(\ {テキストジョンは} \ \ ) 彼の牛が残念ながら楽しむためのいくつかのおいしいゲリー上つもりは牧草地の草を植え、いくつかの非常に不毛の土地は草を使用することはできません。そして、排他的な感じのような草の牛の作品なので、\(\ {テキストジョンは} \ ) と言うことである二つの隣接する土地を、選択しないだろう、どの2つは共通のエッジの草を持っていません。
不毛の土地かどうかはあなたに彼が選んだの植樹プログラムのための種の総数を与えるために?(もちろん、新しい完全に放棄した牧場は、プログラムもあります)

問題の解決策

不可侵のレプリカ?リミットはまだ少し大きいです。
セットF [i] [j]は、行I jはプログラムの数であり、i行目の状態を表しています。明確な

f[i][j]+=f[i-1][k]|j,k合法且互不冲突

だから今、重要な問題は、土地の制約が行うどのくらいですか?
設立に状態&、0と、その後否定し、土地の状況

8.P4170 [CQOI2007]着色

たびに、あなたは最初のカラーコーティングの色のカバーを適用した後に与えられた色塗装の連続ボードを置くことができます。着色が少ない数が目標に達して排出しました。

問題の解決策

間隔DP推測した後着色I〜J塗装特定過ごし列が状態fに難しいことではありません[i] [j]の数です。
私は== jがあります

f[i][j]=1

[i]を== A [j]はiとjは完全にそれでコーティングされているとき、私はちょうど絵を開始

f[i][j]=min(f[i][j-1],f[i+1][j]) 

それ以外の場合は、背景があること、個別に塗装することが確かです

f[i][j]=min(f[i][k]+f[k+1][j],f[i][j]);

演習

1.P1837ソリティア

2.P1140類似遺伝子

3.JSK43368

https://nanti.jisuanke.com/t/43368

(n(nは\ル20) \)\ 座標、各座標だけの宝物が夢を見ることができる持っている、あなたは\((0,0)\) 少なくとも、あなたは宝のすべての種類を収集することができますどのくらいあなたを求めることができます夢(あなたが唯一のマンハッタン距離に応じて歩いて行くことができます)

@ 2196 HDU、P1077、U53204、P1091,1651 @ POJ、5115 @ HDU、P1879、P4170、P1837、P1140

おすすめ

転載: www.cnblogs.com/liuziwen0224/p/xjx9.html