Algorithm/Greedy
[Python] TCT: 왕실의 나이트
supremo7
2021. 1. 24. 19:11
#문제
이것이 코딩테스트다 P.115
[이것이 코딩 테스트다.Part02.Chapter04] - 왕실의 나이트 (Java)
todayilearned.Algorithm.solveProblem(왕실의 나이트)
velog.io
#풀이 & 학습한 내용
파이썬에서 문자를 아스키코드로, 아스키코드를 문자로 바꾸는 ord(), chr()가 있는데, 이 문제에서는 ord()를 활용해서 문제를 해결했습니다. 가능한 경우에 대해 리스트에 넣어두고, for문으로 접근하는 법 또한 익힐 수 있었습니다.
또한, 파이썬에서는 다른 언어와 다르게 a<=b<=c로 적을 수 있다는 점을 이용해서 보다 간결하게 코드를 작성할 수 있었습니다.
#소스코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#가능한 경우 리스트에 넣어두고 for문으로 접근하기
going = [(+2,-1),(+2,+1),(-2,-1),(-2,+1), \
(+1,-2),(+1,+2),(-1,-2),(-1,+2)]
my_str = input()
#ord는 문자를 아스키코드로
#chr는 아스키코드를 문자로
x=ord(my_str[0])-ord('a')+1
y=int(my_str[1])
ans = 0
for go in going:
if (1<=x+go[0]<=8) and (1<=y+go[1]<=8):
ans+=1
print(ans)
|
cs |
HoYoungChun/Algorithm_PS
Baekjoon Online Judge, Programmers problem solving by Python, C++ - HoYoungChun/Algorithm_PS
github.com