Cos Pro Python 1급 1차 06번 문제풀이
Contents of table:
Topic:
체스의 나이트
Review:
2차원 panel 위에서 포인트 이동문제.
소용돌이 알고리즘의 해결방법과 유사하게, direction 리스트를 정하고, point 를 정해진 조건에
따라서 이동시켜서 결과값을 얻어낸다.
정답코드
1 | def solution(pos): |
문제내용
체스에서 나이트(knight)는 아래 그림과 같이 동그라미로 표시된 8개의 방향중 한 곳으로 한 번에 이동이 가능합니다.
단, 나이트는 체스판 밖으로는 이동할 수 없습니다.
체스판의 각 칸의 위치는 다음과 같이 표기합니다.
예를 들어, A번줄과 1번줄이 겹치는 부분은 ‘A1’이라고 합니다.
나이트의 위치 pos가 매개변수로 주어질 때, 나이트를 한 번 움직여서 이동할 수 있는 칸은 몇개인지 return 하도록 solution 함수를 완성해주세요.
매개변수 설명
나이트의 위치 pos가 solution 함수의 매개변수로 주어집니다.
- pos는 A부터 H까지의 대문자 알파벳 하나와 1 이상 8이하의 정수 하나로 이루어진 두 글자 문자열입니다.
- 잘못된 위치가 주어지는 경우는 없습니다.
return 값 설명
나이트를 한 번 움직여서 이동할 수 있는 칸의 개수를 return 해주세요.
예시
pos | return |
---|---|
“A7” | 3 |
예시 설명
나이트가 A7 위치에 있으면 아래 그림과 같이 왼쪽으로는 이동하지 못하고, 오른쪽으로는 맨 위를 제외한 나머지 세 칸으로 이동 가능합니다.
따라서, 3을 return 하면 됩니다.
Cos Pro Python 1급 1차 06번 문제풀이
http://yoursite.com/2020/09/21/1%EA%B8%89-1%EC%B0%A8-06%EB%B2%88/