Entries

スポンサーサイト (この記事を編集する[管理者用])

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://rsujskf.blog32.fc2.com/tb.php/2044-35d720ae
この記事にトラックバックする(FC2ブログユーザー)

UVa 12294 - RPG battles (この記事を編集する[管理者用])

Source

The Seventh Hunan Collegiate Programming Contest Semilive (2011-09-17)
UVa 12294

問題概要

RPGでN個 (1000以下) の戦闘を与えられた順番にこなさなければいけない.
全部に勝つ戦闘時間の和の最小値を求める問題.勝てないならそれを指摘する.
主人公の最初のパワーはpである.(100以下)
各戦闘に対して,p1, p2, t1, t2, w1, w2 が与えられる.(p1, p2, t1, t2は100以下,w1, w2は10以下)
戦闘時間は,
 主人公のパワーがp1より小さければ勝てない
 主人公のパワーがp2より大きければt2
 そうれなければ,主人公のパワーがp1の時,戦闘時間t1,パワーがp2の時,戦闘時間がt2になるように線形に補間する.
戦闘に勝ったら,ドーピング剤1がw1個,ドーピング剤2がw2個もらえる.ドーピング剤はいつ使っても良い.
ドーピング剤1は使うと主人公のパワーが永続的に1増える.
ドーピング剤2は使うと主人公のパワーが永続的に2倍になる.

解法

ドーピング剤1は手に入れたらすぐ使うのが最適.
あとは,どこまで敵を倒したか,現在のパワー,ドーピング剤2の所持個数を状態にDPする.
現在のパワーが100を超えても意味ないので,100を超えたら100として処理する.
ドーピング剤2の個数が7を超えても意味ないので,同様の処理を行う.

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://rsujskf.blog32.fc2.com/tb.php/2044-35d720ae
この記事にトラックバックする(FC2ブログユーザー)

Appendix

Recent Articles

ブログ内検索

Ads


(プライバシーポリシー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。