https://www.acmicpc.net/problem/3003
문제 해석
- 체스에 종류별로 필요한 피스 개수에서 input의 피스 개수를 뺀다.
- input 값이 아래와 같이 띄어쓰기를 구분하여 들어오기 때문에 split(' ')을 해줘야 한다.
0 1 2 2 2 7
풀이
- 첫 번째 시도 - 성공
- 굳이 변수에 다 담을 필요가 없고, 체스에 필요한 피스 개수를 묶어 저장하지 않아 가독성이 떨어진다.
a,b,c,d,e,f = map(int,input().split(' ')) # 각각 변수에 input의 피스의 개수를 담아
print(1-a,1-b,2-c,2-d,2-e,8-f, end = ' ') # 체스 피스의 개수에서 빼줬다
- 두 번째 시도 - 성공
import sys
userNums = list(map(int, sys.stdin.readline().strip().split(' ')))
chessNums = [1,1,2,2,2,8]
for i in range(6):
print(chessNums[i] - userNums[i], end = " ")
userNums = list(map(int, sys.stdin.readline().strip().split(' ')))
- sys.stdin.readline()을 이용해 input값을 받아
- 양쪽 공백을 strip()으로 제거하고
- split(' ')을 이용해 공백을 기준으로 나눴다.
- map을 통해 모든 요소를 숫자형(int)로 바꿨고 map은 객체를 반환하기 때문에
- list에 담아 userNums에 저장하였다.
for i in range(6):
- for문을 이용해 체스 종류가 6개 임으로 6번을 반복하면서
- 체스가 필요한 개수에 input이 가지고 있는 체스 피스를 빼주고 출력하였다.
'algorithm > 백준' 카테고리의 다른 글
[PYTHON] 2588번 곱셈 strip()을 쓰는 이유/ (0) | 2023.01.06 |
---|---|
[PYTHON] 10430번 나머지 (0) | 2023.01.06 |
[PYTHON] 18108번 1998년생인 내가 태국에서는 2541년생?! (0) | 2023.01.05 |
[PYTHON] 10926번 ??! (0) | 2023.01.05 |
[PYTHON] 10869번 사칙연산 (0) | 2023.01.05 |
댓글