CS/Algorithm & Data Structure
[구현] 왕실의 나이트
Yeji Heo
2023. 2. 21. 01:58
나는 아래와 같이 풀었다. 1,1칸부터 8,8칸까지 돌며 조건에 맞는 칸만 체크를 했다.
input_data = input()
r = int(input_data[1])
c = ord(input_data[0])-ord('a')+1)
cnt=0
for i in range(1,9):
for j in range(1,9):
if abs(r-i)==2 and abs(c-j)==1:
cnt+=1
if abs(r-i)==1 and abs(c-j)==2:
cnt+=1
print(cnt)
처음에 이동할 수 있는 방향이 몇 개 없으니 그것만 체크하면 되겠다 라고 생각했다
근데 직전에 푼 브루트포스 문제의 여파인지, 8 x 8 좌표는 작으니 그냥 다 체크하자고 생각해버렸던 거 같다.
정답으로 보여주신 코드인데, 처음 생각대로 8가지 방향만 체크해보면 되므로 훨씬 효율적인 코드같다.
문제 출처: https://www.youtube.com/watch?v=2zjoKjt97vQ&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=2