나는이 도전을 독립적으로 생각해 냈지만 Doorknob 의이 도전에 반대되는 것으로 판명되었습니다 . 나는 그의 스펙을 정말로 좋아하기 때문에 내 자신의 설명을 요리하는 대신 많은 부분을 훔치기로 결정했습니다.
도전
나침반의 32 점 중 하나의 약어가 주어지면 해당 각도를 인쇄하십시오. 32 점에 대한 설명에 관심이 없으면 아래 표를 건너 뛰십시오.
전체 나침반은 다음과 같습니다.
작성자 : Denelson83 (자체 작업) [ GFDL 또는 CC-BY-SA-3.0 ], 위키 미디어 공용
각 방향은 이전보다 11.25 (360/32) 더 먼 거리입니다. 예를 들어, N (북쪽)은 0도, NbE (북쪽 동쪽)는 11.25도, NNE (북동쪽)는 22.5도 등입니다.
세부적으로 이름은 다음과 같이 지정됩니다.
- 0 도는 N, 90 도는 E, 180 도는 S, 270 도는 W입니다.이를 기본 방향이라고합니다.
- 기본 방향 사이의 중간 지점은 단순히 연결된 기본 방향입니다. N 또는 S가 항상 먼저 가고 W 또는 E가 항상 두 번째입니다. 이것을 서수 방향이라고합니다. 서수 및 기본 방향은 함께 주풍을 형성합니다.
- 주풍 사이의 중간 지점은 이들이 연결된 방향입니다. 기본 방향은 먼저, 서수 방향으로 이동합니다. 이것을 반 바람이라고합니다.
- 주풍과 반풍 사이의 중간 지점은 주풍에서 가장 가까운 기본 방향으로 "주변"인 인접한 주풍입니다. 이것은로 표시됩니다
b
. 이것을 1/4 바람이라고합니다.
결과는 다음과 같습니다.
# Degrees Abbrv. Name
1 0 N North
2 11.25 NbE North by east
3 22.5 NNE North-northeast
4 33.75 NEbN Northeast by north
5 45 NE Northeast
6 56.25 NEbE Northeast by east
7 67.5 ENE East-northeast
8 78.75 EbN East by north
9 90 E East
10 101.25 EbS East by south
11 112.5 ESE East-southeast
12 123.75 SEbE Southeast by east
13 135 SE Southeast
14 146.25 SEbS Southeast by south
15 157.5 SSE South-southeast
16 168.75 SbE South by east
17 180 S South
18 191.25 SbW South by west
19 202.5 SSW South-southwest
20 213.75 SWbS Southwest by south
21 225 SW Southwest
22 236.25 SWbW Southwest by west
23 247.5 WSW West-southwest
24 258.75 WbS West by south
25 270 W West
26 281.25 WbN West by north
27 292.5 WNW West-northwest
28 303.75 NWbW Northwest by west
29 315 NW Northwest
30 326.25 NWbN Northwest by north
31 337.5 NNW North-northwest
32 348.75 NbW North by west
다음은 나침반의 요점에 대한 자세한 차트와 가능한 더 나은 설명입니다.
당신의 임무는 세 번째 열에서 32 약어 중 하나를 입력으로 사용하고 두 번째 열에 해당 각도를 출력하는 것입니다.
입력이 항상 32 개의 문자열 중 하나라고 가정 할 수 있습니다 (선택적으로 그러나 단일 후행 줄 바꿈을 선택적으로 기대할 수 있음). 후행 0이 허용되지만 출력도 위에 나열된대로 정확하게 제공되어야합니다. 선택적으로 단일 후행 줄 바꿈을 출력 할 수 있습니다.
STDIN (또는 가장 가까운 대안), 명령 행 인수 또는 함수 인수를 통해 입력을 받고 STDOUT (또는 가장 가까운 대안), 함수 리턴 값 또는 함수 (out) 매개 변수를 통해 결과를 출력하는 프로그램 또는 함수를 작성할 수 있습니다.
이것은 코드 골프이므로 가장 짧은 대답 (바이트)이 이깁니다.