[BAEKJOON] 백준 1100: 하얀 칸(C#)

2024. 5. 1. 00:08IT/BaekJoon

문제 링크

https://www.acmicpc.net/problem/1100

 

 

문제

체스판은 8×8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램을 작성하시오.

 

 

입력

 

첫째 줄부터 8개의 줄에 체스판의 상태가 주어진다. ‘.’은 빈 칸이고, ‘F’는 위에 말이 있는 칸이다.

 

 

출력

첫째 줄에 문제의 정답을 출력한다.

 

  

 

통과한 답안

더보기
namespace _1100
{
    internal class Program
    {
        static void Main(string[] args)
        {
            int cnt = 0;

            for (int i = 0; i < 8; i++)
            {
                string input = Console.ReadLine();
                char[] arr = input.ToCharArray();

                for (int j = 0; j < arr.Length; j++)
                {
                    if ((i + j) % 2 == 0 && arr[j] == 'F')
                    {
                        cnt++;
                    }
                }
            }

            Console.WriteLine(cnt);
        }
    }
}

 

체스판 위의 하얀 칸에 위치한 말의 개수를 구하는 문제

어려워보일 수 있지만 변수 i와 j를 이용하여 각 칸의 위치를 특정하고

그 위치에 말이 있는지 확인하는 방식을 사용하여 풀 수 있다.

이는 (i + j) % 2 == 0 이라는 조건을 통해 성립시킬 수 있다.