파란색가운의 개발 블로그
Chapter 4.구현 / 실전 문제 왕실의 나이트 본문
import sys
# sys.stdin.readline()
from collections import deque
sys.setrecursionlimit(100000000)
import heapq
INF = int(1e9)
command = input()
index = 1
idx = 1
array = ['a','b','c','d','e','f','g','h']
for elem in array:
if array == command[0]:
index = idx
idx+=1
x = idx
y = int(command[1])
count = 0
move_types = [(2,1),(2,-1),(-2,-1),(-2,1),(1,2),(-1,2),(1,-2),(-1,-2)]
for move in move_types:
dx = x + move[0]
dy = y + move[1]
if dx > 8 or dy > 8 or dx < 1 or dy < 1:
continue
count+=1
print(count)
저는 for문을 써서 했지만 이건 케이스가 8개밖에 없어서 할 수 있었던 거고..
원래는 이 코드를 써야 한대요
column = int(ord(input_data[0]) - int(ord('a') + 1
ord가 문자열을 아스키코드의 int값으로 대응시켜주는 함수네요
유용하게 쓰일 것 같으니 기억하기!(예전에 분명 공부했지만 또 까먹음
C언어의 노예로 2년간 살았고.. 파이썬은 거의 독학으로 한 거라
중간중간 빵꾸를 메꾸는게 중요할 것 같습니다
예전에 썼었던 것 같기도 한데
연휴동안 이코테 한번 다시 보는게 목표예요(예전에 1회독 다 했는데 진짜 하~나도 기억 안 남)
'알고리즘 문제 풀이 > 이코테' 카테고리의 다른 글
[이코테] DFS/BFS 실전문제 3 음료수 얼려 먹기 (0) | 2023.11.02 |
---|---|
[이코테 Python] 구현 실전문제 3 게임 개발 (0) | 2023.10.03 |
[이코테] 최단경로 문제 3 [전보] 파이썬 풀이 (0) | 2023.07.19 |
[이코테] 최단경로 문제 2 [미래도시] 파이썬 풀이 (0) | 2023.07.19 |
이코테 플로이드 워셜 알고리즘 (0) | 2023.07.04 |