티스토리 뷰
<풀이>
west일때와 north일때와 다른 연산을 해주어야 하고, 연산에서 소숫점이 발생하면(실수) 나중에 소수점이 사라질때 까지 X2를 해주는것이 핵심이다.
Ex) 'northnorthwest'일 경우,
1. west: west는 90도 이므로 ans에 90이 들어간다.(ans=90)
2. northwest: 그 다음 단어는 north이므로 90/2^1를 빼준다.(ans=45)
3. northnorthwest: 그 다음 단어는 north 이므로 90/2^2를 빼준다.(ans=22.5)
여기까지 연산을 끝낸 후 ans를 살펴보면 소숫점이 있는 실수라는 것을 알 수 있다. 이제 ans가 정수가 될때까지 X2를 해준다. 그리고 X2를 해준만큼 k변수에도 X2를 해준다.
ans는 45가 되고 한번 X2를 해주었으므로 k=2가 된다. 그래서 결과값은 45/2라는 것을 알 수 있다.
'알고리즘' 카테고리의 다른 글
<baekjoon> 단어 수학 (0) | 2020.08.22 |
---|---|
<baekjoon> 별자리 만들기 (0) | 2020.08.21 |
<baekjoon> 2583- 영역 구하기 (0) | 2020.08.17 |
<SWEA> 1238-Contact (0) | 2020.08.17 |
<HackerRank> Grading Students (0) | 2020.05.21 |