💻 입력 조건
💻 출력 조건
💻 입력 예시
a1
💻 출력 예시
2
📖 문제 해결
나이트가 위치한 좌표에서 '(1) 수평으로 두 칸 이동한 뒤에 수직으로 한 칸 이동하기' 및 '(2) 수직으로 두 칸 이동한 뒤에 수평으로 한 칸 이동하기'가 가능한 지 확인할 수 있는 코드를 구현하여 문제를 해결하였습니다.
# 영문자 : 열
# 숫자 : 행
coordi = list(map(str,input()))
move_1 = [-1, +1]
move_2 = [-2, +2]
count = 0
# '수직으로 두 칸 이동한 뒤에 수평으로 한 칸 이동'이 가능한지 확인
for first_move in move_2:
present_1 = ord(coordi[0]) - 97 + first_move
for second_move in move_1:
present_2 = int(coordi[1]) - 1 + second_move
# 이동이 가능하다면 count += 1
if 0 <= present_1 and present_1 <= 7 and 0 <= present_2 and present_2 <= 7:
count += 1
# '수평으로 두 칸 이동한 뒤에 수직으로 한 칸 이동'이 가능한지 확인
for first_move in move_2:
present_1 = int(coordi[1]) - 1 + first_move
for second_move in move_1:
present_2 = ord(coordi[0]) - 97 + second_move
# 이동이 가능하다면 count += 1
if 0 <= present_1 and present_1 <= 7 and 0 <= present_2 and present_2 <= 7:
count += 1
print(count)