SlideShare a Scribd company logo
SKIERS 
(LOOKING FOR A CHALLENGE) 
satashun
問題概要
問題概要(超意訳) 
1番上の頂点から1番下の頂点に行けるようなスキー場のグ 
ラフが与えられる(DAG: Directed Acyclic Graph) 
人々は1番上から1番下までの経路を1つ選んで下りていく 
全ての辺を少なくとも1回は通るために最低何人のが必要か
例
例
手がかり 
時間が無いのでいきなり解説してごめんなさい(何でもはし 
ません) 
元のグラフをNとする 
Nの各辺を頂点とするグラフNdを考える 
Nの辺e1, e2について, e1が入りe2が出る頂点がある時Ndでe1 
に対応する点->e2に対応する点への辺を張る
手がかり 
Ndにおいて, 二項関係 “≦” を定義する 
e1 ≦ e2 ⇔ e1からe2へのpathがある 
要は上から下に向かうpathの中では上の方が高いというこ 
と 
この関係は次の性質を満たす
半順序 
≦をP上で定義された二項関係とする 
反射律 …. ∀a∈P : a ≦ a 
推移律 …. ∀a, b, c∈P : a≦b∧b≦c ⇒ a≦c 
反対称律 …. ∀a,b∈P : a≦b∧b≦a ⇒ a=b 
これらを満たす≦を半順序といい、組(P, ≦)を半順序集合という
用語 
a, b∈Aに対してa≦bまたはb≦aが成り立つ時, aとbは比較可能, そ 
うでない時比較不能という 
ここでは特にa1≦a2, a2≦a3, ….., an-1≦anの時、集合{a1, a2, …., an} 
をchainと呼ぶ(全順序集合)(性質を崩さず要素を追加できない 
時maximal chainと言う) 
どの2つの要素も比較不能である集合B{b1, …, bn}をantichainと 
言う
問題との対応 
Aの部分集合の族A1, A2, …, Amが∪Ai = Aを満たす時被覆と 
いう 
頂上から麓に降りるpathを1つ決めることはグラフNdから 
maximal chainを1つ選ぶ事に対応する 
Ndの点の被覆となるmaximal chainの族の最小要素数を求め 
る問題に帰着される
DILWORTHの定理(1950) 
任意の半順序集合(P, ≦)に対して, (antichainの最大要素数) = (P 
の被覆となるchainの族の最小要素数)
証明 
Pのantichainの最大要素数をmとすれば、被覆となるchainは 
m個は必要(各chainについて、このantichainの要素を高々1つ 
だけ含むので) 
実はm個だけの被覆として表せることがわかる 
Pの要素数についての帰納法
証明 
|P|=1の時… antichainの最大要素数は1で、これは1つのchain 
で被覆出来るので良い 
|P|=kとし, |S| < kを満たす任意のSで仮定 
Pのmaximal chainの1つをC, 最大要素数mを持つantichainの1 
つをAとおく
証明 
PからCの要素を取り除いたP  Cを考え、大小関係をP  C 
の要素間だけに限定する 
(1) この中でのantichainの最大要素数がm-1の時 
帰納法の仮定によりP  Cはm-1個のchainで被覆できるの 
で、Cと合わせてm個のchainで被覆できる
証明 
(2)この中でのantichainの最大要素数がmのままの時(m-2個以下になることはない) 
P  Cの最大のantichainの1つをA’とおく(A’はPでも最大かつA’ ∩ C = ∅であるこ 
とに注意) 
S = {x∈P | ∃a ∈ A’ : a≦x}, T = {x∈P | ∃a∈A’ : x≦a}とおく 
P = S ∪ Tである(S, Tのどちらにも属さないx∈PがあるとするとxはA’に追加するこ 
とができA’最大性に反する) 
A’⊂SかつA’⊂T
証明 
Cの最小元をcとおく 
c∈Sと仮定すると, ∃a ∈ A’ : a < cであって, aはCに追加でき 
るのでCの最大性に反するのでc∉S 
同様にして(Cの最大元)∉Tより|S|, |T| < |P|
証明 
よって帰納法の仮定より, chainの族によってS = S1 ∪ S2 ∪ … 
∪ Sm, T = T1 ∪ T2 ∪ … ∪ Tmとできる 
A’ = {a1, a2, …, am}とすると, a1∈S1∩T1, …, am∈Sm∩Tmとして 
よく、P = (S1∪T1)∪….∪(Sm∪Tm)と表せることができるの 
で、m個のchainに分解することができた
問題を解く 
この定理を使うと嬉しそう(定理はmaximal chainであること 
は必要としない) 
二部マッチングで解けるが制約が大きい 
頂点数 ≦ 5000と書いてあるが辺の本数は制約に書いてない
問題文をよく見てみる 
“Ski tracks may cross only on clearings and do not run through 
tunnels nor on bridges. “ 
閉路もなし 
平面グラフ
観察 
こんな感じの領域(面)
ANTICHAIN 
隣り合う面を隔てる辺の列 
グラフを西から東へ切る
例
双対 
平面グラフにおいて面数, 辺数はO(頂点数)個 (オイラーの公 
式などより) 
! 
特にここでは各辺の左側にある面から右側へ辺を張る(これ 
はDAG)(外側の面は除く)
例 
結局このグラフ上での最長経路+2が答え
計算 
トポロジカルソートしてdpすればよい
面の作り方 
この図のような感じで, 各辺の左と右の分の頂点を用意して, 
各点で隣り合う2つをunionfindなどでくっつけていくと楽
実装例 
http://ideone.com/xOkV5g 
なぜかコンパイルエラーになっているのは気にしない(提出 
すると100点がもらえる)
類題 
! 
OUPC2012, C問題 
TopCoder SRM557 Div1 Medium 
PCK2012本選, ねこまっしぐら2
ご清聴ありがとうございました

More Related Content

What's hot

Indeedなう A日程 解説
Indeedなう A日程 解説Indeedなう A日程 解説
Indeedなう A日程 解説
AtCoder Inc.
 
WUPC2012
WUPC2012WUPC2012
WUPC2012
Dai Hamada
 
Code Formula 予選B 解説
Code Formula 予選B 解説Code Formula 予選B 解説
Code Formula 予選B 解説
AtCoder Inc.
 
AtCoder Beginner Contest 024 解説
AtCoder Beginner Contest 024 解説AtCoder Beginner Contest 024 解説
AtCoder Beginner Contest 024 解説
AtCoder Inc.
 
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
Kensuke Otsuki
 
Union find(素集合データ構造)
Union find(素集合データ構造)Union find(素集合データ構造)
Union find(素集合データ構造)
AtCoder Inc.
 
2部グラフの最小点被覆の求め方
2部グラフの最小点被覆の求め方2部グラフの最小点被覆の求め方
2部グラフの最小点被覆の求め方
Kensuke Otsuki
 
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)Motoya Wakiyama
 
AtCoder Beginner Contest 025 解説
AtCoder Beginner Contest 025 解説AtCoder Beginner Contest 025 解説
AtCoder Beginner Contest 025 解説
AtCoder Inc.
 
指数時間アルゴリズムの最先端
指数時間アルゴリズムの最先端指数時間アルゴリズムの最先端
指数時間アルゴリズムの最先端Yoichi Iwata
 
様々な全域木問題
様々な全域木問題様々な全域木問題
様々な全域木問題
tmaehara
 
プログラミングコンテストでの乱択アルゴリズム
プログラミングコンテストでの乱択アルゴリズムプログラミングコンテストでの乱択アルゴリズム
プログラミングコンテストでの乱択アルゴリズムTakuya Akiba
 
AtCoder Regular Contest 032 解説
AtCoder Regular Contest 032 解説AtCoder Regular Contest 032 解説
AtCoder Regular Contest 032 解説
AtCoder Inc.
 
はじめてのパターン認識輪読会 10章後半
はじめてのパターン認識輪読会 10章後半はじめてのパターン認識輪読会 10章後半
はじめてのパターン認識輪読会 10章後半koba cky
 
AtCoder Beginner Contest 016 解説
AtCoder Beginner Contest 016 解説AtCoder Beginner Contest 016 解説
AtCoder Beginner Contest 016 解説
AtCoder Inc.
 
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~
Takuya Akiba
 
At coder regular contest 013 解説
At coder regular contest 013 解説At coder regular contest 013 解説
At coder regular contest 013 解説
光喜 濱屋
 
AtCoder Regular Contest 002
AtCoder Regular Contest 002AtCoder Regular Contest 002
AtCoder Regular Contest 002
AtCoder Inc.
 
幾何を使った統計のはなし
幾何を使った統計のはなし幾何を使った統計のはなし
幾何を使った統計のはなし
Toru Imai
 

What's hot (20)

Indeedなう A日程 解説
Indeedなう A日程 解説Indeedなう A日程 解説
Indeedなう A日程 解説
 
WUPC2012
WUPC2012WUPC2012
WUPC2012
 
Code Formula 予選B 解説
Code Formula 予選B 解説Code Formula 予選B 解説
Code Formula 予選B 解説
 
AtCoder Beginner Contest 024 解説
AtCoder Beginner Contest 024 解説AtCoder Beginner Contest 024 解説
AtCoder Beginner Contest 024 解説
 
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
二部グラフの最小点被覆と最大安定集合と最小辺被覆の求め方
 
Union find(素集合データ構造)
Union find(素集合データ構造)Union find(素集合データ構造)
Union find(素集合データ構造)
 
2部グラフの最小点被覆の求め方
2部グラフの最小点被覆の求め方2部グラフの最小点被覆の求め方
2部グラフの最小点被覆の求め方
 
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
 
Random Forestsとその応用
Random Forestsとその応用Random Forestsとその応用
Random Forestsとその応用
 
AtCoder Beginner Contest 025 解説
AtCoder Beginner Contest 025 解説AtCoder Beginner Contest 025 解説
AtCoder Beginner Contest 025 解説
 
指数時間アルゴリズムの最先端
指数時間アルゴリズムの最先端指数時間アルゴリズムの最先端
指数時間アルゴリズムの最先端
 
様々な全域木問題
様々な全域木問題様々な全域木問題
様々な全域木問題
 
プログラミングコンテストでの乱択アルゴリズム
プログラミングコンテストでの乱択アルゴリズムプログラミングコンテストでの乱択アルゴリズム
プログラミングコンテストでの乱択アルゴリズム
 
AtCoder Regular Contest 032 解説
AtCoder Regular Contest 032 解説AtCoder Regular Contest 032 解説
AtCoder Regular Contest 032 解説
 
はじめてのパターン認識輪読会 10章後半
はじめてのパターン認識輪読会 10章後半はじめてのパターン認識輪読会 10章後半
はじめてのパターン認識輪読会 10章後半
 
AtCoder Beginner Contest 016 解説
AtCoder Beginner Contest 016 解説AtCoder Beginner Contest 016 解説
AtCoder Beginner Contest 016 解説
 
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~
 
At coder regular contest 013 解説
At coder regular contest 013 解説At coder regular contest 013 解説
At coder regular contest 013 解説
 
AtCoder Regular Contest 002
AtCoder Regular Contest 002AtCoder Regular Contest 002
AtCoder Regular Contest 002
 
幾何を使った統計のはなし
幾何を使った統計のはなし幾何を使った統計のはなし
幾何を使った統計のはなし
 

Viewers also liked

サンプルで学ぶAlloy
サンプルで学ぶAlloyサンプルで学ぶAlloy
サンプルで学ぶAlloy
NSaitoNmiri
 
天下一プログラマーコンテスト2015 予選A E問題 解説
天下一プログラマーコンテスト2015 予選A E問題 解説天下一プログラマーコンテスト2015 予選A E問題 解説
天下一プログラマーコンテスト2015 予選A E問題 解説
AtCoder Inc.
 
Chokudai Contest 001
Chokudai Contest 001Chokudai Contest 001
Chokudai Contest 001
AtCoder Inc.
 
スペクトラル・クラスタリング
スペクトラル・クラスタリングスペクトラル・クラスタリング
スペクトラル・クラスタリング
Akira Miyazawa
 
実践・最強最速のアルゴリズム勉強会 第五回講義資料(ワークスアプリケーションズ & AtCoder)
実践・最強最速のアルゴリズム勉強会 第五回講義資料(ワークスアプリケーションズ & AtCoder)実践・最強最速のアルゴリズム勉強会 第五回講義資料(ワークスアプリケーションズ & AtCoder)
実践・最強最速のアルゴリズム勉強会 第五回講義資料(ワークスアプリケーションズ & AtCoder)
AtCoder Inc.
 
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
Yoshitake Takebayashi
 
2014 3 13(テンソル分解の基礎)
2014 3 13(テンソル分解の基礎)2014 3 13(テンソル分解の基礎)
2014 3 13(テンソル分解の基礎)
Tatsuya Yokota
 
MIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearningMIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearning
Takayoshi Yamashita
 
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計
Takahiro Kubo
 
学部生向けベイズ統計イントロ(公開版)
学部生向けベイズ統計イントロ(公開版)学部生向けベイズ統計イントロ(公開版)
学部生向けベイズ統計イントロ(公開版)
考司 小杉
 
5分でわかるベイズ確率
5分でわかるベイズ確率5分でわかるベイズ確率
5分でわかるベイズ確率hoxo_m
 
これからのコンピュータビジョン技術 - cvpaper.challenge in PRMU Grand Challenge 2016 (PRMU研究会 2...
これからのコンピュータビジョン技術 - cvpaper.challenge in PRMU Grand Challenge 2016 (PRMU研究会 2...これからのコンピュータビジョン技術 - cvpaper.challenge in PRMU Grand Challenge 2016 (PRMU研究会 2...
これからのコンピュータビジョン技術 - cvpaper.challenge in PRMU Grand Challenge 2016 (PRMU研究会 2...
cvpaper. challenge
 
先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15
Yoichi Ochiai
 

Viewers also liked (14)

サンプルで学ぶAlloy
サンプルで学ぶAlloyサンプルで学ぶAlloy
サンプルで学ぶAlloy
 
天下一プログラマーコンテスト2015 予選A E問題 解説
天下一プログラマーコンテスト2015 予選A E問題 解説天下一プログラマーコンテスト2015 予選A E問題 解説
天下一プログラマーコンテスト2015 予選A E問題 解説
 
Chokudai Contest 001
Chokudai Contest 001Chokudai Contest 001
Chokudai Contest 001
 
Chokudai search
Chokudai searchChokudai search
Chokudai search
 
スペクトラル・クラスタリング
スペクトラル・クラスタリングスペクトラル・クラスタリング
スペクトラル・クラスタリング
 
実践・最強最速のアルゴリズム勉強会 第五回講義資料(ワークスアプリケーションズ & AtCoder)
実践・最強最速のアルゴリズム勉強会 第五回講義資料(ワークスアプリケーションズ & AtCoder)実践・最強最速のアルゴリズム勉強会 第五回講義資料(ワークスアプリケーションズ & AtCoder)
実践・最強最速のアルゴリズム勉強会 第五回講義資料(ワークスアプリケーションズ & AtCoder)
 
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
 
2014 3 13(テンソル分解の基礎)
2014 3 13(テンソル分解の基礎)2014 3 13(テンソル分解の基礎)
2014 3 13(テンソル分解の基礎)
 
MIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearningMIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearning
 
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計
 
学部生向けベイズ統計イントロ(公開版)
学部生向けベイズ統計イントロ(公開版)学部生向けベイズ統計イントロ(公開版)
学部生向けベイズ統計イントロ(公開版)
 
5分でわかるベイズ確率
5分でわかるベイズ確率5分でわかるベイズ確率
5分でわかるベイズ確率
 
これからのコンピュータビジョン技術 - cvpaper.challenge in PRMU Grand Challenge 2016 (PRMU研究会 2...
これからのコンピュータビジョン技術 - cvpaper.challenge in PRMU Grand Challenge 2016 (PRMU研究会 2...これからのコンピュータビジョン技術 - cvpaper.challenge in PRMU Grand Challenge 2016 (PRMU研究会 2...
これからのコンピュータビジョン技術 - cvpaper.challenge in PRMU Grand Challenge 2016 (PRMU研究会 2...
 
先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15
 

Similar to JOIss2014

双対性
双対性双対性
双対性
Yoichi Iwata
 
公開鍵暗号2: NP困難性
公開鍵暗号2: NP困難性公開鍵暗号2: NP困難性
公開鍵暗号2: NP困難性
Joe Suzuki
 
Limits on Super-Resolution and How to Break them
Limits on Super-Resolution and How to Break themLimits on Super-Resolution and How to Break them
Limits on Super-Resolution and How to Break them
Morpho, Inc.
 
パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化Miyoshi Yuya
 
グラフカットによる画像背景切り取り
グラフカットによる画像背景切り取りグラフカットによる画像背景切り取り
グラフカットによる画像背景切り取り
coil_kpc
 
場の量子論
場の量子論場の量子論
場の量子論
M M
 
Permutation
PermutationPermutation
Permutationoupc
 
第9回スキル養成講座講義資料
第9回スキル養成講座講義資料第9回スキル養成講座講義資料
第9回スキル養成講座講義資料
keiodig
 
Learning Latent Space Energy Based Prior Modelの解説
Learning Latent Space Energy Based Prior Modelの解説Learning Latent Space Energy Based Prior Modelの解説
Learning Latent Space Energy Based Prior Modelの解説
Tomonari Masada
 
Deep learning _linear_algebra___probablity___information
Deep learning _linear_algebra___probablity___informationDeep learning _linear_algebra___probablity___information
Deep learning _linear_algebra___probablity___information
takutori
 
topology of musical data
topology of musical datatopology of musical data
topology of musical data
Tatsuki SHIMIZU
 
積分と漸化式
積分と漸化式積分と漸化式
積分と漸化式
政孝 鍋島
 
University CodeSprint 4 - Magic value
University CodeSprint 4 - Magic valueUniversity CodeSprint 4 - Magic value
University CodeSprint 4 - Magic value
satanic
 
卒論プレゼンテーション -DRAFT-
卒論プレゼンテーション -DRAFT-卒論プレゼンテーション -DRAFT-
卒論プレゼンテーション -DRAFT-Tomoshige Nakamura
 

Similar to JOIss2014 (15)

双対性
双対性双対性
双対性
 
公開鍵暗号2: NP困難性
公開鍵暗号2: NP困難性公開鍵暗号2: NP困難性
公開鍵暗号2: NP困難性
 
2013 03 25
2013 03 252013 03 25
2013 03 25
 
Limits on Super-Resolution and How to Break them
Limits on Super-Resolution and How to Break themLimits on Super-Resolution and How to Break them
Limits on Super-Resolution and How to Break them
 
パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化
 
グラフカットによる画像背景切り取り
グラフカットによる画像背景切り取りグラフカットによる画像背景切り取り
グラフカットによる画像背景切り取り
 
場の量子論
場の量子論場の量子論
場の量子論
 
Permutation
PermutationPermutation
Permutation
 
第9回スキル養成講座講義資料
第9回スキル養成講座講義資料第9回スキル養成講座講義資料
第9回スキル養成講座講義資料
 
Learning Latent Space Energy Based Prior Modelの解説
Learning Latent Space Energy Based Prior Modelの解説Learning Latent Space Energy Based Prior Modelの解説
Learning Latent Space Energy Based Prior Modelの解説
 
Deep learning _linear_algebra___probablity___information
Deep learning _linear_algebra___probablity___informationDeep learning _linear_algebra___probablity___information
Deep learning _linear_algebra___probablity___information
 
topology of musical data
topology of musical datatopology of musical data
topology of musical data
 
積分と漸化式
積分と漸化式積分と漸化式
積分と漸化式
 
University CodeSprint 4 - Magic value
University CodeSprint 4 - Magic valueUniversity CodeSprint 4 - Magic value
University CodeSprint 4 - Magic value
 
卒論プレゼンテーション -DRAFT-
卒論プレゼンテーション -DRAFT-卒論プレゼンテーション -DRAFT-
卒論プレゼンテーション -DRAFT-
 

JOIss2014