[수업]달팽이
문제
풀이
범위는 항상 조심할것.
- 여기서는 long으로 해줘야한다.
- 물론 입력받을때도 마찬가지.
- 또한 정사각형인지 판별은 매우 쉬우니까 패스.
p=0 : 1
p=1 : 17 -> 4*(n-1)+1
p=2 : 25 -> 4*((n-1)+(n-3))+1
p=k : ? -> 4*((n-1)+(n-3)+(n-5)+...+(n-(2k-1)))+1
=> 4(N-1), 4(N-3) ... 아이디어를 사용해서 해결
- p는 네모난 껍질이라고 생각하면 되며, 0번째 껍질은 최외곽이며 첫번째 숫자가 1
- p=1의 경우 1번째 껍질이며 첫번째 숫자가 17
- …. 이런식으로 가면 공식을 구해낼 수 있다.
따라서 이 p를 활용해서 A, B의 위치를 추적하는 형식으로 알고리즘을 짜면 된다.
댓글남기기