SlideShare uma empresa Scribd logo
1 de 5
Baixar para ler offline
最近線分対




               原案・問題文:宮村
               解答:宮村、橋本
                    解説:宮村
問題概要


   N 本の線分が与えられるので、最も近い線分間の
    距離を求める問題。

   N≦10^5
   0≦x[i,j], y[i,j]≦100
着眼点



   不自然に小さい 0≦x[i,j], y[i,j]≦100 に着目する。
   鳩ノ巣原理 (PHP) より N>101*101/2 のときは答
    が必ず 0 になる。
   なので、実際は N≦101*101/2≒5000 のときだけ
    を考えれば良い。
解法


   N≦101*101/2 のときだけ真面目に全探索する。
   ただし、幾何の計算は重いので TLE の可能性があ
    る。
   x 座標でソートしておいて、これまでの最適解以内
    の範囲だけ調べる、などの簡単な枝刈りを付け加
    えると余裕で間に合う。
解答例

   宮村: C++
    92 行 1780 byte


   橋本: Java
    76 行 2281 byte

Mais conteúdo relacionado

Mais procurados

有限個の点を取り付けた集合の位相
有限個の点を取り付けた集合の位相有限個の点を取り付けた集合の位相
有限個の点を取り付けた集合の位相政孝 鍋島
 
introductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysisintroductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysisTatsuki SHIMIZU
 
PRML ベイズロジスティック回帰
PRML ベイズロジスティック回帰PRML ベイズロジスティック回帰
PRML ベイズロジスティック回帰hagino 3000
 
2013.12.26 prml勉強会 線形回帰モデル3.2~3.4
2013.12.26 prml勉強会 線形回帰モデル3.2~3.42013.12.26 prml勉強会 線形回帰モデル3.2~3.4
2013.12.26 prml勉強会 線形回帰モデル3.2~3.4Takeshi Sakaki
 
スペクトラル・クラスタリング
スペクトラル・クラスタリングスペクトラル・クラスタリング
スペクトラル・クラスタリングAkira Miyazawa
 
情報幾何学の基礎 第2章 4.5
情報幾何学の基礎 第2章 4.5情報幾何学の基礎 第2章 4.5
情報幾何学の基礎 第2章 4.5Tatsuki SHIMIZU
 
[PRML勉強会資料] パターン認識と機械学習 第3章 線形回帰モデル (章頭-3.1.5)(p.135-145)
[PRML勉強会資料] パターン認識と機械学習 第3章 線形回帰モデル (章頭-3.1.5)(p.135-145)[PRML勉強会資料] パターン認識と機械学習 第3章 線形回帰モデル (章頭-3.1.5)(p.135-145)
[PRML勉強会資料] パターン認識と機械学習 第3章 線形回帰モデル (章頭-3.1.5)(p.135-145)Itaru Otomaru
 
「3.1.2最小二乗法の幾何学」PRML勉強会4 @筑波大学 #prml学ぼう
「3.1.2最小二乗法の幾何学」PRML勉強会4 @筑波大学 #prml学ぼう 「3.1.2最小二乗法の幾何学」PRML勉強会4 @筑波大学 #prml学ぼう
「3.1.2最小二乗法の幾何学」PRML勉強会4 @筑波大学 #prml学ぼう Junpei Tsuji
 
13.2 隠れマルコフモデル
13.2 隠れマルコフモデル13.2 隠れマルコフモデル
13.2 隠れマルコフモデルshow you
 
Prml4.4 ラプラス近似~ベイズロジスティック回帰
Prml4.4 ラプラス近似~ベイズロジスティック回帰Prml4.4 ラプラス近似~ベイズロジスティック回帰
Prml4.4 ラプラス近似~ベイズロジスティック回帰Yuki Matsubara
 
Prml3.5 エビデンス近似〜
Prml3.5 エビデンス近似〜Prml3.5 エビデンス近似〜
Prml3.5 エビデンス近似〜Yuki Matsubara
 
PRML 1.6 情報理論
PRML 1.6 情報理論PRML 1.6 情報理論
PRML 1.6 情報理論sleepy_yoshi
 
[PRML] パターン認識と機械学習(第3章:線形回帰モデル)
[PRML] パターン認識と機械学習(第3章:線形回帰モデル)[PRML] パターン認識と機械学習(第3章:線形回帰モデル)
[PRML] パターン認識と機械学習(第3章:線形回帰モデル)Ryosuke Sasaki
 

Mais procurados (20)

有限個の点を取り付けた集合の位相
有限個の点を取り付けた集合の位相有限個の点を取り付けた集合の位相
有限個の点を取り付けた集合の位相
 
PRML 第4章
PRML 第4章PRML 第4章
PRML 第4章
 
introductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysisintroductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysis
 
PRML ベイズロジスティック回帰
PRML ベイズロジスティック回帰PRML ベイズロジスティック回帰
PRML ベイズロジスティック回帰
 
2013.12.26 prml勉強会 線形回帰モデル3.2~3.4
2013.12.26 prml勉強会 線形回帰モデル3.2~3.42013.12.26 prml勉強会 線形回帰モデル3.2~3.4
2013.12.26 prml勉強会 線形回帰モデル3.2~3.4
 
prml4.1.3-4.1.4
prml4.1.3-4.1.4prml4.1.3-4.1.4
prml4.1.3-4.1.4
 
スペクトラル・クラスタリング
スペクトラル・クラスタリングスペクトラル・クラスタリング
スペクトラル・クラスタリング
 
Prml 4.3.5
Prml 4.3.5Prml 4.3.5
Prml 4.3.5
 
情報幾何学の基礎 第2章 4.5
情報幾何学の基礎 第2章 4.5情報幾何学の基礎 第2章 4.5
情報幾何学の基礎 第2章 4.5
 
RUPC2017:Aの解説
RUPC2017:Aの解説RUPC2017:Aの解説
RUPC2017:Aの解説
 
[PRML勉強会資料] パターン認識と機械学習 第3章 線形回帰モデル (章頭-3.1.5)(p.135-145)
[PRML勉強会資料] パターン認識と機械学習 第3章 線形回帰モデル (章頭-3.1.5)(p.135-145)[PRML勉強会資料] パターン認識と機械学習 第3章 線形回帰モデル (章頭-3.1.5)(p.135-145)
[PRML勉強会資料] パターン認識と機械学習 第3章 線形回帰モデル (章頭-3.1.5)(p.135-145)
 
「3.1.2最小二乗法の幾何学」PRML勉強会4 @筑波大学 #prml学ぼう
「3.1.2最小二乗法の幾何学」PRML勉強会4 @筑波大学 #prml学ぼう 「3.1.2最小二乗法の幾何学」PRML勉強会4 @筑波大学 #prml学ぼう
「3.1.2最小二乗法の幾何学」PRML勉強会4 @筑波大学 #prml学ぼう
 
13.2 隠れマルコフモデル
13.2 隠れマルコフモデル13.2 隠れマルコフモデル
13.2 隠れマルコフモデル
 
分布 isseing333
分布 isseing333分布 isseing333
分布 isseing333
 
Prml4.4 ラプラス近似~ベイズロジスティック回帰
Prml4.4 ラプラス近似~ベイズロジスティック回帰Prml4.4 ラプラス近似~ベイズロジスティック回帰
Prml4.4 ラプラス近似~ベイズロジスティック回帰
 
Prml3.5 エビデンス近似〜
Prml3.5 エビデンス近似〜Prml3.5 エビデンス近似〜
Prml3.5 エビデンス近似〜
 
PRML 1.6 情報理論
PRML 1.6 情報理論PRML 1.6 情報理論
PRML 1.6 情報理論
 
Prml 4.3.6
Prml 4.3.6Prml 4.3.6
Prml 4.3.6
 
PRML chapter7
PRML chapter7PRML chapter7
PRML chapter7
 
[PRML] パターン認識と機械学習(第3章:線形回帰モデル)
[PRML] パターン認識と機械学習(第3章:線形回帰モデル)[PRML] パターン認識と機械学習(第3章:線形回帰モデル)
[PRML] パターン認識と機械学習(第3章:線形回帰モデル)
 

Destaque

Gcd
GcdGcd
Gcdoupc
 
Sharp2sat
Sharp2satSharp2sat
Sharp2satoupc
 
Trip
TripTrip
Tripoupc
 
Permutation
PermutationPermutation
Permutationoupc
 
Paren
ParenParen
Parenoupc
 
Cube
CubeCube
Cubeoupc
 
One
OneOne
Oneoupc
 
Replace
ReplaceReplace
Replaceoupc
 
Rmq
RmqRmq
Rmqoupc
 
Magical
MagicalMagical
Magicaloupc
 
Sort
SortSort
Sortoupc
 
Comment
CommentComment
Commentoupc
 
Palin
PalinPalin
Palinoupc
 
Goto
GotoGoto
Gotooupc
 
Kth
KthKth
Kthoupc
 
Sanpo
SanpoSanpo
Sanpooupc
 
指数時間アルゴリズム入門
指数時間アルゴリズム入門指数時間アルゴリズム入門
指数時間アルゴリズム入門Yoichi Iwata
 

Destaque (18)

Gcd
GcdGcd
Gcd
 
Sharp2sat
Sharp2satSharp2sat
Sharp2sat
 
Trip
TripTrip
Trip
 
Permutation
PermutationPermutation
Permutation
 
Paren
ParenParen
Paren
 
Cube
CubeCube
Cube
 
One
OneOne
One
 
Replace
ReplaceReplace
Replace
 
Rmq
RmqRmq
Rmq
 
Magical
MagicalMagical
Magical
 
Sort
SortSort
Sort
 
1
11
1
 
Comment
CommentComment
Comment
 
Palin
PalinPalin
Palin
 
Goto
GotoGoto
Goto
 
Kth
KthKth
Kth
 
Sanpo
SanpoSanpo
Sanpo
 
指数時間アルゴリズム入門
指数時間アルゴリズム入門指数時間アルゴリズム入門
指数時間アルゴリズム入門
 

Mais de oupc

Knapsack
KnapsackKnapsack
Knapsackoupc
 
Game
GameGame
Gameoupc
 
Four op
Four opFour op
Four opoupc
 
Divisor
DivisorDivisor
Divisoroupc
 
Division
DivisionDivision
Divisionoupc
 
Anagram
AnagramAnagram
Anagramoupc
 
Comment
CommentComment
Commentoupc
 

Mais de oupc (8)

Knapsack
KnapsackKnapsack
Knapsack
 
Game
GameGame
Game
 
Four op
Four opFour op
Four op
 
Divisor
DivisorDivisor
Divisor
 
Division
DivisionDivision
Division
 
Anagram
AnagramAnagram
Anagram
 
A
AA
A
 
Comment
CommentComment
Comment
 

Segpair

  • 1. 最近線分対  原案・問題文:宮村  解答:宮村、橋本  解説:宮村
  • 2. 問題概要  N 本の線分が与えられるので、最も近い線分間の 距離を求める問題。  N≦10^5  0≦x[i,j], y[i,j]≦100
  • 3. 着眼点  不自然に小さい 0≦x[i,j], y[i,j]≦100 に着目する。  鳩ノ巣原理 (PHP) より N>101*101/2 のときは答 が必ず 0 になる。  なので、実際は N≦101*101/2≒5000 のときだけ を考えれば良い。
  • 4. 解法  N≦101*101/2 のときだけ真面目に全探索する。  ただし、幾何の計算は重いので TLE の可能性があ る。  x 座標でソートしておいて、これまでの最適解以内 の範囲だけ調べる、などの簡単な枝刈りを付け加 えると余裕で間に合う。
  • 5. 解答例  宮村: C++ 92 行 1780 byte  橋本: Java 76 行 2281 byte