問題の7地方の選挙シミュレーション・ソリューション

A.は、コインを投げます

一見、私は与えられた$ K $のポイントだけで罰金バック限り、精神的に水の問題であるとして、その第二のカットを感じると思います。

その後、20分を終え、それがカット秒でした。

だから、これは実際には元のタイトルです。

2つの転換点を変更するセクションを修正次に、排他的に差の元の配列または意義を考えます。

質問は、初期状態に$ 1 $ 2K $ $ $ $ 0損失の合計を変更するようにします。

そして次に消える同じで点の対に対応する意味のある動作のために発見しました。

配列の長さはそう$ $ N-最短$ BFS $によって前処理の任意の2点の寄与を排除します。

モチーフのようなトポロジー内の圧力の後(すなわち、$ 2 ^ {2K} $〜$ 0 $)最短十分に実行します。

 

B.の回文サブストリング

場合は、テストのアイデア:

各区間のツリーライン内側の回答の合計数を維持することを検討してください。

あなたは貢献度、プラスの範囲にわたる貢献に関する統計限り二人の息子をマージするとき。

次いで寄与はmanacherアルゴリズムにより$ O(K)$時間内で取り扱うことができます。

必要としているmanacher対象の間に、文字列値、直接$ O(\ sqrtのN)$修正、$ O(1)$クエリをブロックすることによって、この事。

操作の修正、直撃怠惰な標識のために、答えは算術シーケンスが可能に変更する方法です。

それが正しいですが、何の正の解の優れはありませんがしかし、多くの特別にmanacher、少し吐き気、複雑$ O(qklogn + nは\ sqrtのN)$宣告しました。

Nは、セグメントツリーによってほとんどが直接間隔統計尋問合算することができるようにするために、$ I $から始まる有効なため回文配列に前処理液の数です。

最後の少しの部分については、それが直接manacher暴力を実行することができます。

変更操作のために、中間セクションから開始パリンドローム配列の多数は、セグメントツリー部により変更することができ、$ K $です。

次の小片のために、まだそれは、ツリーラインを通じて解決することができ、直接manacher暴力処理を実行しました。

そのような複雑さはO(NK + Q(K + LOGN))$ $です。

 

C.最大値

私たちは今、コレクションを選択し検討してください。

Bすべての$ $のセットが直接発注$ $、$ $回数の最も数に最大の貢献をするための最適な戦略の合計に答えることができますので。

そして、あなたは$ $は単調ランキングに増加している見つけなければなりません。

彼らはDPのプロパティを通じて直接ことができるので、この特性は非常に重要です。

$ dp_ {I、J} $ I $ $は、第二要素に示して設けられ、最適な戦略は、要素$ $ J.選択されています

したがって明らか$ DP $転送、$ dp_ {I、J} = MAX(dp_ {I-1、J}、dp_ {I-1、J-1} + b_i + a_iを*(J-1))があります$。

この事を最適化する方法を考えてみ永続ようなビットのようです。

DPブラインドは、後者の他の部分から、すなわち、$ dp_ {I-1、J} $の部分を$ $単調遷移点を推測します。

プレイテーブルFOUNDは確かにケースです。

境界点K $ $、左側の元からの状態遷移、状態遷移によって後者の右側があります。

そして私は$セット$質問の差分リストを維持すると共に、ビット行われ、元のもののようにこれを見つけました。

$ DP $差動配列にテーブルをヒットして、いくつかの単調持っているようだがわかりました。

次に、テーブルサイズが挿入要素$(RK-1)* a_iを+ b_i $発見され、挿入された位置が正確に正しい位置でなく、前述の要素への変更、要素の全体のバックプラス$ a_iを$ヒット。

だから、上のバランスの取れたツリーを作ります。

しかし、その場で突然自閉症に死亡した高速な読み込みLONGLONGを読んでいません。

私は書き込みいくつかのゴミの話なので、カンを証明してください偉大な神yxsブログを。

この練習のための1つの説明はということです

$ K $番目の記事の合計がある場合、最初に私が最適なソリューションでは番目の記事を$ $の結論を検討し、それはまた、1件の記事で$ K + 1 $の最適なソリューションに存在している必要があり、偉大な神のブログの証拠を参照してください。

そこ$ F_ {I-1、J}> F_ {I-1、J-1} + a_iを*(J-1)+、$ F_ {I、J} = F_ {I-1、J} $を検討b_i $。

すなわち、$ F_ {I-1、J} -f_ {I-1、J-1}> a_iを*(J-1)+ b_i $ので、$ G_ {I、J} = F_ {I、J} -f_ {I、J-1} $、$配列、すなわち差分アレイF $。

そこ$ G_ {I、J}> a_iを*(J-1)+ b_i $、$ I $合理的に対応する位置に最初の2つの項目ので。

素子$ k個の$差分テーブルの挿入位置の影響を考えます。

$ J <K $のために

$$ G_ {I、J} = F_ {I、J} -f_ {I、J-1} = F_ {I-1、J} -f_ {I-1、J-1} = G_ {I-1 、J} $$

$ J> K $のために

$$ G_ {I、J} = F_ {I、J} -f_ {I、J-1} = F_ {I-1、J-1} + a_iを*(J-1)+ b_i-F_ {I- 1、J-2} -a_i *(J-2)-b_i = G_ {I-1、J-1} + a_iを$$

挿入動作するので、自動のような追加のサフィックス限り、インデックスをシフトします。

おすすめ

転載: www.cnblogs.com/skyh/p/12193785.html