差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
programming_algorithm:contest_history:atcoder:2019:0209_yahoo-procon2019-qual [2019/02/11] ikatakosprogramming_algorithm:contest_history:atcoder:2019:0209_yahoo-procon2019-qual [2019/02/11] (現在) ikatakos
行 1: 行 1:
-======Yahoo Programming Contest 2019 C,D,F問題メモ======+======みんなのプロコン 2019 C,D,F問題メモ======
  
 [[https://beta.atcoder.jp/contests/yahoo-procon2019-qual|Yahoo Programming Contest 2019]] [[https://beta.atcoder.jp/contests/yahoo-procon2019-qual|Yahoo Programming Contest 2019]]
行 248: 行 248:
 そして制限を考慮に入れると、$i$ 人目までの赤と青のボールの数を数えておき、 そして制限を考慮に入れると、$i$ 人目までの赤と青のボールの数を数えておき、
  
-  * 青いボールを置けないなら左端の↓の遷移が無理 +  * 青いボールの数が足りないなら左端の↓の遷移が無理 
-  * 赤いボールを置けないなら右端の↘の遷移が無理+  * 赤いボールの数が足りないなら右端の↘の遷移が無理
  
 なので、その遷移を除く。端以外はそれぞれ青、赤のボールがまだ余っているので、端のみ考慮すればよい。 なので、その遷移を除く。端以外はそれぞれ青、赤のボールがまだ余っているので、端のみ考慮すればよい。
行 264: 行 264:
 こうして$DP[N][j]$ まで計算すると、「前半の $N$ 個までに赤を $j$ 個置いた場合の並び順の数」が各 $j$ についてわかる。 こうして$DP[N][j]$ まで計算すると、「前半の $N$ 個までに赤を $j$ 個置いた場合の並び順の数」が各 $j$ についてわかる。
  
-すると、後半に赤をいくつ、青をいくつ並べればよいかが、$j$ より計算できる。赤の総数を $r$ とすると、残りは$r-j$ となる。+すると、後半に赤をいくつ、青をいくつ並べればよいかが、$j$ より計算できる。赤の総数を $r$ とすると、$r-j$ となる。
  
-後半の並べ方は特に制限は無いので、${}_NC_{r-j}$ となる。+後半の並べ方は特に制限は無いので、Combinationを用いて ${}_NC_{r-j}$ となる。
  
 前半と合わせて、$\displaystyle \sum_{j=0}^N(DP[N][j] \times {}_NC_{r-j})$ が答えとなる。 前半と合わせて、$\displaystyle \sum_{j=0}^N(DP[N][j] \times {}_NC_{r-j})$ が答えとなる。
programming_algorithm/contest_history/atcoder/2019/0209_yahoo-procon2019-qual.txt · 最終更新: 2019/02/11 by ikatakos
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0