2010-10-14から1日間の記事一覧

1125:Stockbroker Grapevine

PKU

keyword Warshall-Floyd C++ 概要 有向グラフが与えられる。自分以外のノードへの距離の最大値が最小になるようなノードとその値を求める問題。ノード数は100以下。 ノード数が小さいのでWarshall-Floydが間に合う。

2005:Blackjack

PKU

keyword 確率 C++ 概要 n組のデッキを使ったブラックジャックでディーラーのopenになっている1枚と自分の2枚の数字が与えられる。現状態で(補充などを考えない)勝っている確率を求める問題。 実装するだけ。よく考えたらA2枚の場合を除いて21を越える場合…

2593:Max Sequence

PKU

keyword 動的計画法 C++ 概要 2479:Maximum sumと同じ問題。ソース略。

2479:Maximum sum

PKU

keyword 動的計画法 C++ 概要 長さn( 数字を1個も拾っていない。 一つ目の区間の中にいる。 一つ目の区間は終えていて二つ目の区間に入っていない。 二つ目の区間の中にいる。 二つ目の区間を抜けた。

2591:Set Definition

PKU

keyword C++ 概要 1はSの元であり、x in Sならば2*x+1, 3*x+1 in Sである。Sの元を昇順に並べたときのN( いもす先生に教えてもらった。ハミング数を列挙する時の手法でハミングDPというらしい。この方法はxから定数個のxより大きい元が生成されるときに適用…

2385:Apple Catching

keyword 動的計画法 C++ 概要 T( dp[n番目まで処理した][変更の回数]としてDP。デバッグをはし先生に協力してもらった。

3624:Charm Bracelet

PKU

keyword 動的計画法 ナップザック問題 C++ 概要 01ナップザック問題を解く。サイズは個数3500以下、重さ400以下、価値100以下、容量13000以下。 dp[n番目まで見た][現在の容量]でDP。

2769:Reduced ID Numbers

PKU

keyword BruteForce C++ 概要 n( いもす先生にうまい解き方が無いか相談したら全探索でいけるんじゃないか、とのこと。確かにMを大きくするのは難しいように思われる。

3444:Wavelet Compression

PKU

keyword C++ 概要 長さn(再帰的に変換する。変換された後の列が与えられるので元の数列を復元する問題。 前から順に復元すれば良い。