"Has anyone noticed that any two MTR stations can be reached with at most 2 transfers? Excluding Disneyland."
| Transfers | Station Pairs | Percentage |
|---|---|---|
| 0 | 928 | 19.9% |
| 1 | 2,620 | 56.3% |
| 2 | 1,108 | 23.8% |
Maximum transfers: 2 — CLAIM IS TRUE
| Transfers | Station Pairs | Percentage |
|---|---|---|
| 0 | 929 | 19.5% |
| 1 | 2,627 | 55.3% |
| 2 | 1,165 | 24.5% |
| 3 | 32 | 0.7% |
Maximum transfers: 3 — CLAIM IS FALSE
Disneyland only connects to the network via Sunny Bay (Tung Chung Line), making these stations 3 transfers away:
- Kwun Tong Line (non-interchange): Choi Hung, Kowloon Bay, Kwun Tong, Lam Tin, Lok Fu, Ngau Tau Kok, Shek Kip Mei, Wong Tai Sin, Yau Tong, Whampoa
- East Rail Line (non-interchange): Exhibition Centre, Fanling, Fo Tan, Kowloon Tong, Lo Wu, Lok Ma Chau, Mong Kok East, Racecourse, Sha Tin, Sheung Shui, Tai Po Market, Tai Wo, University
- Tseung Kwan O Line (non-interchange): Hang Hau, LOHAS Park, Po Lam, Tiu Keng Leng, Tseung Kwan O
- South Island Line (non-interchange): Lei Tung, Ocean Park, South Horizons, Wong Chuk Hang
The MTR network is modeled as a weighted graph:
-
Nodes:
(station, line)tuples — each station appears once per line serving it- e.g., Admiralty has 4 nodes:
(Admiralty, Island),(Admiralty, Tsuen Wan),(Admiralty, South Island),(Admiralty, East Rail)
- e.g., Admiralty has 4 nodes:
-
Edges:
| Edge Type | Weight | Description |
|---|---|---|
| Same-line | 0 | Adjacent stations on the same line |
| Transfer | 1 | Same station, different lines |
| Walkway | 1 | Connected via walkway (Central↔Hong Kong, TST↔East TST) |
| Branch | 0 | Branch termini on same line (Lo Wu/Lok Ma Chau, Po Lam/LOHAS Park) |
For each station pair (A, B):
- Find all nodes for station A:
[(A, line1), (A, line2), ...] - Find all nodes for station B:
[(B, line1), (B, line2), ...] - Run Dijkstra's algorithm to find minimum weight path
- Return minimum weight = minimum number of transfers
Total stations: 97 (excluding Disneyland)
Total station-line nodes: 121
Total edges: 142
Station pairs analyzed: 4,656
mtr_transfer_test.py— Main analysis scriptmtr_overlay_viz.py— Visualization overlay on MTR maproutemap.png— Official MTR system map