背景
无数代的孩子想知道,如果他们直接向下挖一个洞,他们会到哪里去。事实证明,这无疑是相当危险的,但无论如何...
对映体是在地球表面上彼此直接相对的点。这意味着,如果在两点之间画一条线,它将穿过地球的中心。
挑战
编写一个程序或函数,找到要解决的问题。
在此挑战中,使用经度-纬度系统以及度,弧分和弧秒来表示点。要找到对映体,请交换每个纵坐标(N <-> S和W <-> E)的方向,然后从180度数中减去经度坐标。
示例:
抓住重点N 50 26 23 W 4 18 29。交换指示即可S 50 26 23 E 4 18 29。从中减去经度坐标180 0 0给175 41 31,将对映体的坐标保留为S 50 26 23 E 175 41 31。
规则
输入项
一组任意合理格式的纬度-经度坐标,其中每个坐标包含一个方向,一个度数,一个弧分和一个弧秒。
输出量
对映体的纬度-经度坐标,采用任何合理的格式,其中每个坐标包含一个方向,一个度数,一个弧分和一个弧秒。
合理地表示可以清楚地区分坐标的每个部分。
眼镜
- 纬度坐标的方向是
N或S,经度坐标的方向是W或E。 - 所有坐标值都是整数。度值将与
0和90纬度之间,以及0和180经度。两个坐标的弧分和弧秒值都在0和之间59。 - 如果纵坐标的所有值均为
0,则任一方向都可接受。 - 无需对任何值进行零填充。
- 纬度坐标永远不会大于
90度,纬度坐标也不会大于180度。 - 有标准漏洞。
测试用例
N 50 26 23 W 4 18 29 -> S 50 26 23 E 175 41 31
S 43 9 9 E 0 0 5 -> N 43 9 9 W 179 59 55
N 0 0 0 E 0 0 0 -> S/N 0 0 0 W/E 180 0 0 (either direction fine in each case)
S 1 2 3 W 4 5 6 -> N 1 2 3 E 175 54 54
S 9 21 43 W 150 7 59 -> N 9 21 43 E 29 52 1
S 27 40 2 W 23 0 0 -> N 27 40 2 E 157 0 0
N 0 58 37 W 37 0 0 -> S 0 58 37 E 143 0 0
有用的链接
这是代码高尔夫球,因此最短答案以字节为单位!
N,S,E,或W作为一个方向,而冗余0介绍歧义哪个值表示纵坐标的哪个组件。