[백준] [파이썬/Python] 1100번 : 하얀 칸
문제
체스판은 8×8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램을 작성하시오.
입력
첫째 줄부터 8개의 줄에 체스판의 상태가 주어진다. ‘.’은 빈 칸이고, ‘F’는 위에 말이 있는 칸이다.
출력
첫째 줄에 문제의 정답을 출력한다.
코드
from sys import stdin
array = []
array2 =[]
count =0
for i in range(8):
array2 = list(stdin.readline().rstrip()) #\n제거
array.append(array2)
for i in range(0,8,2):
for j in range(0,8,2):
if array[i][j] == 'F':
count +=1
for i in range(1,8,2):
for j in range(1,8,2):
if array[i][j] == 'F':
count +=1
print(count)
- 이 문제에서 가장 중요한 점은, ‘왼쪽 위칸 (0,0)은 하얀색이다’라는 부분이다.
- 인터넷에 아무 체스판이나 보고 검정색 제일 위 칸을 (0,0)으로 했더니 처음에 왜 틀렸지? 하면서 보고 있었다
- 8번 반복해서 2차원 배열을 만들어준다.
- stdin.readline().rstrip() ->을 하면, \n을 제거하고 입력 받을 수 있다.
- 체스판의 0,2,4,6번째 row에서 0,2,4,6번째 column 에 말이 있는지 비교한다.
- 체스판의 1,3,5,7번째 row에서 1,3,5,7번째 column 에 말이 있는지 비교한다.
- 말이 있으면 count+1 해준다.
'코딩테스트 > 파이썬' 카테고리의 다른 글
[백준] [Python/파이썬] 10773번 : 제로 풀이 (0) | 2023.02.18 |
---|---|
[백준] [파이썬/Python] 10845번 : 큐 풀이 / pop함수, queue 설명 (0) | 2023.02.17 |
[백준] [파이썬/Python] 11866번 : 요세푸스 문제 풀이 (0) | 2023.02.16 |
[백준] [파이썬/Python] 18258번 : 큐2 / deque 설명 / popleft()/appendleft()/deque() (2) | 2023.02.15 |
[백준] [파이썬/Python] 1966번 : 프린터 큐 (2) | 2023.02.15 |
댓글