행복 왕국의 왕실 정원은 8 x 8 좌표 평면입니다. 나이트는 이동할 때 L자 형태로만 이동할 수 있으며 정원 밖으로는 나갈 수 없습니다.
나이트는 2가지 경우로 이동이 가능합니다.
이 때, 나이트가 주어진 위치에서 이동할 수 있는 경우의 수를 출력하는 프로그램을 작성하세요
cur = input()
x = ord(cur[0]) - 97
y = int(cur[1])-1
# 방향벡터
dx = [2, 2, -2, -2, 1, 1, -1, -1]
dy = [1, -1, 1, -1, 2, -2, 2, -2]
cnt = 0
for i in range(8):
nx = x + dx[i]
ny = y + dy[i]
if nx < 8 and nx > -1 and ny < 8 and ny > -1: # 체스판 '안'인지 확인 (index 0부터 시작)
cnt += 1
print(cnt)
input_data = input()
row = int(input_data[1])
column = int(ord(input_data[0])) - int(ord('a')) + 1
# 이동할 수 있는 방향을 튜플로 설정 -> 이득은? 저장공간 이득
steps = [(-2,-1), (-2,1), (2,-1), (2,1), (-1,-2), (-1,2), (1,-2), (1,2)]
result = 0
# 각 위치로 이동이 가능한지 확인
for step in steps:
next_row = row + step[0]
next_column = column + step[1]
if next_row >= 1 and next_row <= 8 and next_column >=1 and next_column <= 8:
result += 1
print(restult)