Submit Search
Upload
RUPC2015Day2 - J
•
Download as PPTX, PDF
•
0 likes
•
484 views
N
NariyoshiChida
Follow
立命館大学競技プログラミング合宿2015Day2
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 11
Download now
Recommended
K : 解説
K : 解説
Takumi Yamashita
ACPC2016 K問題解説
RUPC2014_Day2_G
RUPC2014_Day2_G
s1190048
RUPC2015Day2 - 総評
RUPC2015Day2 - 総評
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
指数時間アルゴリズム入門
指数時間アルゴリズム入門
Yoichi Iwata
情オリ2012春合宿講義資料
RUPC2015Day2 - K
RUPC2015Day2 - K
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - C
RUPC2015Day2 - C
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - E
RUPC2015Day2 - E
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - I
RUPC2015Day2 - I
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
Recommended
K : 解説
K : 解説
Takumi Yamashita
ACPC2016 K問題解説
RUPC2014_Day2_G
RUPC2014_Day2_G
s1190048
RUPC2015Day2 - 総評
RUPC2015Day2 - 総評
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
指数時間アルゴリズム入門
指数時間アルゴリズム入門
Yoichi Iwata
情オリ2012春合宿講義資料
RUPC2015Day2 - K
RUPC2015Day2 - K
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - C
RUPC2015Day2 - C
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - E
RUPC2015Day2 - E
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - I
RUPC2015Day2 - I
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - D
RUPC2015Day2 - D
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - F
RUPC2015Day2 - F
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - A
RUPC2015Day2 - A
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - B
RUPC2015Day2 - B
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - H
RUPC2015Day2 - H
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - G
RUPC2015Day2 - G
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
More Related Content
More from NariyoshiChida
RUPC2015Day2 - D
RUPC2015Day2 - D
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - F
RUPC2015Day2 - F
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - A
RUPC2015Day2 - A
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - B
RUPC2015Day2 - B
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - H
RUPC2015Day2 - H
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
RUPC2015Day2 - G
RUPC2015Day2 - G
NariyoshiChida
立命館大学競技プログラミング合宿2015Day2
More from NariyoshiChida
(6)
RUPC2015Day2 - D
RUPC2015Day2 - D
RUPC2015Day2 - F
RUPC2015Day2 - F
RUPC2015Day2 - A
RUPC2015Day2 - A
RUPC2015Day2 - B
RUPC2015Day2 - B
RUPC2015Day2 - H
RUPC2015Day2 - H
RUPC2015Day2 - G
RUPC2015Day2 - G
RUPC2015Day2 - J
1.
J : Yu-kun
Likes a lot of Money 原案 : 千田 解答 : 大桃、山本、千田
2.
問題概要 hマス ×
wマスのフィールドが与えられる フィールドの構成要素は次の通り @ : ゆう君の初期位置 道と同様に扱う . : 道 自由に通ることができ、費用もかからない # : 大きな岩 このマスは通れない * : 小さな岩 最初にこのマスを通る際には費用がかかる 費用を払った後は道 になる 0,1,..,9,a,b,..,z,A,B,..,Z : 財宝 このマスを最初に訪れたときにはお金を得ることが できる ゆう君は隣接する上下左右のいずれかのマスに移動できる ゆう君が得られる金額の最大値はいくらか
3.
想定解法 一行覚えるDP 左上から順に1マスずつ見ていき、そのマスを取る場合と取 らない場合について考える
状態を各マスの状態を int で持ち、連結なグループの情報を 記録する ( 連結なグループならグループ番号、グループに属さないな らば -1 など ) ゆう君がグループに入ったかどうかを 0 か 1 で記録しておく C++ の場合、 vector<int> vec(W+1) を状態としmapなどで管 理する 最初のW個が各マスの連結グループ番号を表し、最後の1つが ゆう君がグループに属しているかを表す
4.
想定解法 C++ での例
map< vector<int>, int > dp; vector<int> vec(W+1); vec[0]からvec[W-1]までは連結なグループの情報を 番号として記録 vec[W]には 0 か 1 でゆう君の初期位置がいずれか のグループに含まれているかを記録
5.
想定解法 今みているマスを取らない(ゆう君が訪れない)場合 黄色の星が別のグループと繋がっているか判定
繋がっていない場合、非連結なグループができてし まうので状態を更新しない ( ゆう君がワープしてしまっている )
6.
想定解法 今みているマスを取らない(ゆう君が訪れない)場合
7.
想定解法 今みているマスを取らない(ゆう君が訪れない)場合
8.
想定解法 今みているマスを取る(ゆう君が訪れる)場合 Union-find木等を利用してグループをまとめる
9.
想定解法 各マスの処理をした後に、連結なグループ数が1 つだけで、かつゆう君がグループに属していれば 正しい状態なので答えを更新する
10.
想定解法 グループの状態数はかなり多く見積もると58 実際はそんなにはない
毎回Union-Find木で0から順に状態を整理していく グループが隣接している場合それらは同じ番号とな る O( h * w * (グループの状態数) * w2 )
11.
提出状況 First Acceptance
オンサイト --- () オンライン --- ()
Download now