# 3003 킹, 퀸, 룩, 비숍, 나이트, 폰 문제
https://www.acmicpc.net/problem/3003
체스 검정색 피스는 전부 있지만 흰색 피스는 아닌 경우에 흰색 피스에 추가하거나 빼야되는 문제입니다.
피스가 더 있는 경우엔 더하고 아닌 경우엔 빼야겠네요.
# 풀이
black = [1, 1, 2, 2, 2, 8] # 검정색 피스
white = list(map(int, input().split())) # 흰색 피스
for i in range(len(black)):
a = black[i] - white[i]
print(a, end = ' ')
먼저 black 변수에 검정색 피스 말들의 개수를 리스트로 저장했습니다.
index 0번부터 킹, 퀸, 룩, 비숍, 나이트, 폰입니다.
white 변수엔 입력하는 값을 정수형으로 바꿔서 리스트로 만들어 저장했습니다.
그 후 black 리스트의 길이에 따라 반복하여 연산을 하고 출력하도록 작성했습니다.
# 결과
예제대로 입력해보았습니다.
예제 출력대로 출력되는 것을 확인하고 제출했습니다.
문제는 한 번에 맞출 수 있었습니다.
숏코딩에 들어가서 고수들의 코드를 확인해보니 제 코드 길이 182의 1/3 정도로 적었네요.
저는 리스트로 만들었지만 고수들은 문자열 그대로 사용하여 문자열 1줄, for 반복문 1줄로 작성했네요.
지금까지 심화 1 3003 킹, 퀸, 룩, 비숍, 나이트, 폰 문제를 풀어봤습니다.
제가 정답을 맞추는 과정을 기록하는 글입니다.