【发布时间】:2018-04-07 00:23:24
【问题描述】:
所以链接没有回答这个问题。我不知道如何在 Hackerspace 上解决这个查询。网上的解决方案似乎都没有奏效。这是一个错误还是我做错了什么?
将 P1(a,b) 和 P2(c,d) 视为 2D 平面上的两个点。
a 恰好等于北纬的最小值(STATION 中的 LAT_N)。
b 恰好等于西经的最小值(STATION 中的 LONG_W)。
c 恰好等于北纬的最大值(STATION 中的 LAT_N)。
d 恰好等于西经的最大值(STATION 中的 LONG_W)。
查询点之间的曼哈顿距离并将其四舍五入到小数位。
输入格式
STATION表描述如下:
STATION表
- ID |编号
- 城市 | VarChar2(21)
- 状态 | VarChar2(2)
- LAT_N |号码
- LONG_W |号码
数据库:MySQL
来源:https://www.hackerrank.com/challenges/weather-observation-station-18/problem
链接:distance between two longitude and latitude(已尝试,但提供的答案均无效。)
SELECT ROUND(ABS(MIN(Station.LAT_N) - MIN(Station.LONG_W)) + ABS(MAX(Station.LAT_N) - MAX(Station.Long_W)), 4)
FROM Station;
【问题讨论】:
-
曼哈顿距离假定为平面,这是短距离的合理近似值。它不适用于长距离的球坐标。