[백준] 하얀 칸 (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

테스트 케이스2

입력 출력
1 1
A
1

문제 풀이(KOTLIN)

import java.io.BufferedReader
import java.io.InputStreamReader

fun main() = with(BufferedReader(InputStreamReader(System.`in`))) {
    var count = 0

    for (i in 0 until 8) {
        val str = readLine()

        if (i % 2 == 0) {
            for (j in 0 until 8) {
                if (j % 2 == 0 && str[j] == 'F')
                    count++
            }
        } else {
            for (j in 0 until 8) {
                if (j % 2 == 1 && str[j] == 'F')
                    count++
            }
        }
    }

    println(count)
}

문제 풀이 (SWIFT)

var count = 0

for i in 0..<8 {
    let str = readLine()!.map { String($0) }
    for j in 0..<8 {
        if (i + j) % 2 == 0 && str[j] == "F" {
            count += 1
        }
    }
}

print(count)

카테고리:

업데이트: