SlideShare a Scribd company logo
1 of 13
Download to read offline
E: 均衡な辺削除

(Balanced Edge Deletion)
原案: tsutaj
問題文: TAB
解答: kazu, tsutaj, tsukasa_diary
問題概要
重み付きグラフG = (V, E)が与えられる。
e ∈ Eを取り除き、Gを二つの連結成分AとBに分割する。
この時、Gが連結ならば、V(B) = øとする。
Aの辺重みの総和とBの辺重みの総和の差の絶対値が最小にな
るような辺eを求めよ。
ただし、複数ある場合は端点の頂点番号が最小になるようなeを求めよ。さらに、端点の頂点番号の最小が同
じ場合は残った端点の番号が小さいものを求めよ。
ざっくりとした問題は次のようになる。
!2
こんな感じで、グラフがあるので、2つの連結成分が持つ重
みの総和が偏らないような辺を見つける問題と言える。
具体例を用いた説明
!3
4
52
1
6
310
7
1
2
9
8 5
10
9
8
7
8
3
12
1
こんな感じで、グラフがあるので、2つの連結成分が持つ重
みの総和が偏らないような辺を見つける問題と言える。
具体例を用いた説明
!4
A
B
4
52
1
6
310
7
1
2
9
8 5
10
9
8
7
8
3
12
1
方針: 連結成分が2つできるように分けるべき? =>
常に橋を取り除くのが良い?
想定誤解法
!5
4
52
1
6
310
7
1
2
9
8 5
10
9
8
7
8
3
12
1
方針: 連結成分が2つできるように分けるべき?
  NO!!!
想定誤解法
!6
4
52
1
6
310
7
1
2
9
8 5
10
9
8
7
8
3
12
1
方針: 連結成分が2つできるように分けるべき?
  NO!!!
下の例の場合、明らかに99,999を削除するのが良い。
想定誤解法
!7
4
52
1
6
310
7
1
99,999
9
8 5
10
9
8
7
8
3
12
1
方針
最適解を2種類に分けて考える。
1. 橋以外を取り除いて得られる最適解
2. 橋を取り除いて得られる最適解
橋の列挙がO(n + m)はできるので、1は明らかにO(m)時間で
求まる。
2をどうするか?
!8
方針
最適解を2種類に分けて考える。
1. 橋以外を取り除いて得られる最適解
2. 橋を取り除いて得られる最適解
橋の列挙がO(n + m)はできるので、1は明らかにO(m)時間で
求まる。
2をどうするか?
ナイーブにはO(m2)時間で計算可能だが,m < 105なので,
TLE.
O(m)でやろう!
!9
解法: 二重辺連結成分分解
簡単なため,入力グラフが木の場合を考える.
入力グラフに根はないが,適当な1頂点を根とみなして根付
き木にする.
葉の方からDP的に計算すればO(n + m)時間で最適な分割をす
る辺を計算可能.
木なら解けるので,入力グラフを木にしよう!
!10
1 5
2
9
8 4
1
3 7
解法: 二重辺連結成分分解
入力グラフを二重辺連結成分(橋を含まない極大な部分グラ
フ)に分解し,その連結成分を一つの頂点とみなす.
すると頂点と辺に重みがついた木ができる.
この木上でDPをすると木のサイズに対して線形時間,つまり
O(n + m)時間で解ける!!!
!11
1
5
2
9
8
4
1
3
7
辺の総重み: 20
Writer 解
・kazu (C++)92行 (橋列挙に基づくDP解)
・tsutaj(C++)241行(二重辺連結成分分解)
・tsukasa_diary(C++)72行(橋列挙に基づくDP解)
!12
提出状況
・Accept / Submit: 15/96
・First Acceptance:
- Onsite: acpc_gomatubu (36 min)
- Online: latte0126 (56 min)
!13

More Related Content

More from HCPC: 北海道大学競技プログラミングサークル

More from HCPC: 北海道大学競技プログラミングサークル (20)

HUPC 2019 Day2 G: 木
HUPC 2019 Day2 G: 木HUPC 2019 Day2 G: 木
HUPC 2019 Day2 G: 木
 
HUPC 2019 Day2 E: ジャム
HUPC 2019 Day2 E: ジャムHUPC 2019 Day2 E: ジャム
HUPC 2019 Day2 E: ジャム
 
HUPC 2019 Day2 H: Revenge of UMG
HUPC 2019 Day2 H: Revenge of UMGHUPC 2019 Day2 H: Revenge of UMG
HUPC 2019 Day2 H: Revenge of UMG
 
HUPC 2019 Day2 F: MOD Rush
HUPC 2019 Day2 F: MOD RushHUPC 2019 Day2 F: MOD Rush
HUPC 2019 Day2 F: MOD Rush
 
HUPC 2019 Day2 C: 串刺し
HUPC 2019 Day2 C: 串刺しHUPC 2019 Day2 C: 串刺し
HUPC 2019 Day2 C: 串刺し
 
HUPC 2019 Day1 F: グリッドの番号
HUPC 2019 Day1 F: グリッドの番号HUPC 2019 Day1 F: グリッドの番号
HUPC 2019 Day1 F: グリッドの番号
 
HUPC 2019 Day1 E: 最短経路の復元
HUPC 2019 Day1 E: 最短経路の復元HUPC 2019 Day1 E: 最短経路の復元
HUPC 2019 Day1 E: 最短経路の復元
 
HUPC 2019 Day1 D: 貪欲が最適?
HUPC 2019 Day1 D: 貪欲が最適?HUPC 2019 Day1 D: 貪欲が最適?
HUPC 2019 Day1 D: 貪欲が最適?
 
HUPC 2019 Day1 C: 短絡評価
HUPC 2019 Day1 C: 短絡評価HUPC 2019 Day1 C: 短絡評価
HUPC 2019 Day1 C: 短絡評価
 
HUPC 2019 Day1 B: 自身の 2 倍
HUPC 2019 Day1 B: 自身の 2 倍HUPC 2019 Day1 B: 自身の 2 倍
HUPC 2019 Day1 B: 自身の 2 倍
 
HUPC 2019 Day1 A: four tea
HUPC 2019 Day1 A: four teaHUPC 2019 Day1 A: four tea
HUPC 2019 Day1 A: four tea
 
Convex Hull Trick
Convex Hull TrickConvex Hull Trick
Convex Hull Trick
 
プログラミングコンテスト基礎テクニック
プログラミングコンテスト基礎テクニックプログラミングコンテスト基礎テクニック
プログラミングコンテスト基礎テクニック
 
RUPC 2019 Day3 G: Donuts Orientation
RUPC 2019 Day3 G: Donuts OrientationRUPC 2019 Day3 G: Donuts Orientation
RUPC 2019 Day3 G: Donuts Orientation
 
RUPC 2019 Day3 D: 矢
RUPC 2019 Day3 D: 矢RUPC 2019 Day3 D: 矢
RUPC 2019 Day3 D: 矢
 
RUPC 2019 Day3 F: 赤黒そーるじぇむ
RUPC 2019 Day3 F: 赤黒そーるじぇむRUPC 2019 Day3 F: 赤黒そーるじぇむ
RUPC 2019 Day3 F: 赤黒そーるじぇむ
 
RUPC 2019 Day3 E: 往復文字列
RUPC 2019 Day3 E: 往復文字列RUPC 2019 Day3 E: 往復文字列
RUPC 2019 Day3 E: 往復文字列
 
RUPC 2019 Day3 C: 約数ゲーム
RUPC 2019 Day3 C: 約数ゲームRUPC 2019 Day3 C: 約数ゲーム
RUPC 2019 Day3 C: 約数ゲーム
 
RUPC 2019 Day3 B: 括弧を語る数
RUPC 2019 Day3 B: 括弧を語る数RUPC 2019 Day3 B: 括弧を語る数
RUPC 2019 Day3 B: 括弧を語る数
 
RUPC 2019 Day3 A: 情報検索
RUPC 2019 Day3 A: 情報検索RUPC 2019 Day3 A: 情報検索
RUPC 2019 Day3 A: 情報検索
 

Recently uploaded

Recently uploaded (12)

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 

ACPC 2018 Day3 E: 均衡な辺削除 (Balanced Edge Deletion)