Upload
hiro-h
View
211
Download
0
Embed Size (px)
Citation preview
名古屋市営地下鉄 最小距離完乗
H.Hiro (@h_hiro_)
わんくま同盟 名古屋勉強会 #39 ライトニングトーク
某所で研究の仕事
(情報系)をしている
H.Hiroと申します
よろしくお願いします
やったこと
名古屋市営地下鉄
一日で全線
乗り尽くしました
それだけじゃ
大したこと
ないのですが
最小の乗車距離で
乗り尽くしました
名古屋市営地下鉄の路線は
全部で93.3kmある
乗り尽くすにも
あまり余計な
乗車はしたくない
なので
最小乗車距離で
乗り尽くす
ルール: 「乗り尽くして、出発駅に戻る までの乗車距離」を最小にする
「出発駅に戻るまで」
が重要
(計算が楽になる)
93.3kmの路線網を
142.9kmで乗り尽くす。
これが最小です。
なお、142.9kmって
名古屋~京都の
片道くらいはある ※東海道新幹線経由での実際の距離
(営業キロではない)が約134km
14時間かけて乗り尽くしました
(駅周辺散策の時間含む)
レポート
ルール:
終点駅と
地下鉄同士の接続駅は
駅周辺をレポートする
1. 中村区役所駅
(累計0.0km 9:20ごろ着)
言うまでもなく
中村区役所の目の前
七宝・津島へ向かうバスが
通っている
2. 名古屋駅
(累計0.9km 9:55ごろ着)
単に駅の中を見ても面白く ないので、KITTE名古屋へ。
まだ空きが多い
3. 高畑駅
(累計7.5km 10:40ごろ着)
飲み物を買うのに、スーパーが 近くにあることを期待したのだが なかった(コンビニで買った)
4. 藤が丘駅
(累計28.1km 11:35ごろ着)
地下鉄は上の高架です。 下に行くとリニモです。
5. 本山駅
(累計34.5km 12:15ごろ着)
周辺は学習塾が多かった。 名大が近い土地柄?
オムライスおいしかった (近くの店)
6. 今池駅
(累計37.0km 13:10ごろ着)
近くに 「ダイエー通り」ってあるけど
イオンに変わってしまった
7. 丸の内駅
(累計40.9km 13:50ごろ着)
交差する道がとても広い (伏見通・桜通)
→歩道橋もとても長い
8. 上小田井駅
(累計47.2km 14:20ごろ着)
高架の上を 二つの高架が跨ぐ (城北線・名二環)
9. 名古屋港駅
(累計63.6km 15:35ごろ着)
この日は名古屋みなと祭 だったので、ちょっとだけ 見て混まないうちに退散
10. 金山駅
(累計69.6km 16:30ごろ着)
これでようやく
乗車距離
半分くらい
この写真の中に 山ちゃんが3店あります
11. 八事駅
(累計78.8km 17:25ごろ着)
西側だけ下り坂、他が上り坂 という山の途中
山と言われる喫茶店もそんなに遠くない
12. 赤池駅
(累計84.2km 18:10ごろ着)
ここは日進市です。 日進市のバスが来ます。
12. 上前津駅
(累計95.8km 19:00ごろ着)
あまり説明しなくていいかな…
初めて万松寺の中に入って みたけど、改装中で、入れる スペースが限定されてた
13. 栄駅
(14. 久屋大通駅)
(累計97.2km 19:35ごろ着)
オアシス21のこの壁画 なぜに円周率…
15. 平安通駅
(累計102.4km 20:15ごろ着)
そろそろ
疲れてきた
でもここだと
夕食取りやすい
雰囲気が
ないので移動
16. 上飯田駅
(累計103.2km 20:30ごろ着)
かつての終点駅だったからか 店も多い
駅ビルが駅がなくなっても そのまま使われたり バスターミナルが
市営住宅と一体化していたり
17. 新瑞橋駅
(累計116.5km 21:45ごろ着)
名城線
半周は長い!
ここも、バスターミナルが 広かったり、店が多かったり。 なお、ここもかつての終点駅
18. 徳重駅
(累計123.8km 22:20ごろ着)
駅周辺から、最近整備されたと いう雰囲気が伝わってくる (道路のきれいさとか)
19. 御器所駅
(累計134.5km 23:05ごろ着)
家に帰る電車が
なくなるかもという
懸念発生!
なので駅前の写真を 数枚撮って終わり!
1. 中村区役所駅 (142.9km 23:30ごろ)
ゴール!
→
あ、家には 無事帰れました
結論:
乗り尽くすの案外大変だよ!
ところで
一駅忘れてた
伏見駅
(´・ω・`)
ここから
アルゴリズムの話
計算のポイント(1)
「出発駅に戻る」には
「行き止まりは必ず折り返す」
必要がある
なので、行き止まりの区間は
2回乗ることが確定
(緑の線)
計算のポイント(2)
「出発駅に戻る」には 「どの駅も、到着回数と 離脱回数が同じ」必要
1回通るだけでは 「到着+離脱」が奇数回になる
駅を集め、偶数回にする
丸の内 本山
八事
新瑞橋
解:これらの駅を2つずつ 組にし、距離の合計が最小に
なるようにすればよい
丸の内 本山
八事
新瑞橋
解:これらの駅を2つずつ 組にし、距離の合計が最小に
なるようにすればよい
丸の内 本山
八事
新瑞橋
解:これらの駅を2つずつ 組にし、距離の合計が最小に
なるようにすればよい
丸の内 本山
八事
新瑞橋
答え ペア1 ペア2 合計距離
パターン1 丸の内-新瑞橋
9.0km 本山-八事
3.1km 12.1km
パターン2 丸の内-八事
8.7km 本山-新瑞橋
6.6km 15.3km
パターン3 丸の内-本山
6.4km 八事-新瑞橋
3.5km 9.9km
解:これらの駅を2つずつ 組にし、距離の合計が最小に
なるようにすればよい
丸の内 本山
八事
新瑞橋
解:これらの駅を2つずつ 組にし、距離の合計が最小に
なるようにすればよい
丸の内 本山
八事
新瑞橋
太線を2回ずつ それ以外を1回ずつ
通るルートが最短です。
駅数が増えても
解き方は同じ (本当に多くなると
コンピュータに解かせないと
大変ですけどね)
詳しくはこのあたりを
中国人郵便配達問題 – Wikipedia
(私も編集を加えてます)
https://ja.wikipedia.org/wiki/中国人郵便配達問題
Boost.GraphでJR全線乗り尽くしプランを立てる
(プログラミング生放送+CLR/H+Sapporo.cpp 勉強会@札幌)
http://www.slideshare.net/maraigue/chinese-postman