문제
체스판은 8*8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램을 작성하시오.
입력
첫째 줄부터 8개의 줄에 체스판의 상태가 주어진다. ‘.’은 빈 칸이고, ‘F’는 위에 말이 있는 칸이다.
출력
첫째 줄에 문제의 정답을 출력한다.
예제 입력 1
.F.F...F
F...F.F.
...F.F.F
F.F...F.
.F...F..
F...F.F.
.F.F.F.F
..FF..F.
예제 출력 1
1
하얀칸이고 F인 것만 카운트하면 된다. 색깔은 color 변수에 True False값을 넣어 판별한다. 하얀색 True, 검은색 False
(초기값은 True ==> (0,0)이 하얀색 )
import sys
chess = [sys.stdin.readline().strip() for _ in range(8)]
count = 0
color = True
for i in chess:
for j,p in enumerate(i):
if p == "F" and color:
count += 1
else:
pass
if j == 7:
pass
else:
if color:
color = False
else:
color = True
print(count)
F이고 color가 True면 +1 해준다. j==7 이면 색을 변경하지 않는 것은 줄바꿈을 위한 설정이다.
반응형
'Algorithm > Online judge' 카테고리의 다른 글
[백준] 1026번 > 보물 (0) | 2021.02.18 |
---|---|
[백준] 1764번 > 듣보잡 (0) | 2021.02.17 |
[백준] 9251번 > LCS (0) | 2021.02.17 |
[백준] 13305번 > 주유소 (0) | 2021.02.16 |
[프로그래머스] 2021 카카오 블라인드 채용 > 메뉴 리뉴얼 (0) | 2021.02.15 |