백준 1100 하얀 칸
문제
체스판은 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
풀이 과정
체스판의 칸이 백 흑 백 흑으로 번갈아 나타난다.
체스판에 놓인 기물의 상태를 리스트로 입력받아 2차원 리스트로 나타낸다.
2중 반복문을 이용해 현재 하얀 칸이고 기물이 있으면 정답을 1 증가시킨다.
하얀 칸인지 판단하는 white 변수는 True, False로 나타낸다.
다른 방법으로, 체스판의 모든 칸이 수로 나타낼 수 있다고 가정한다.
2중 반복문을 설정한다. i와 j를 더한 값이 짝수이면 하얀 칸이 되는 것이 핵심이다.
코드 1
board = []
for _ in range(8):
R = input()
tmp = []
for r in R:
tmp.append(r)
board.append(tmp)
white = False
count = 0
for i in range(8):
white = not white
for j in range(8):
if white and board[i][j] == 'F':
count += 1
white = not white
print(count)
코드 2
board = []
for _ in range(8):
board.append(list(map(str, list(input()))))
count = 0
for i in range(8):
for j in range(8):
if (i + j) % 2 == 0 and board[i][j] == 'F':
count += 1
print(count)
Author And Source
이 문제에 관하여(백준 1100 하얀 칸), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@mynote/백준-1100-하얀-칸저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)