본문 바로가기

알고리즘/백준

백준 1236 - 성지키기(브론즈1)

반응형

 

출처) https://www.acmicpc.net/problem/1236

 

1236번: 성 지키기

첫째 줄에 성의 세로 크기 N과 가로 크기 M이 주어진다. N과 M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 성의 상태가 주어진다. 성의 상태는 .은 빈칸, X는 경비원이 있는 칸이다

www.acmicpc.net

문제풀이>

행과 열 중에서 X가 없는 갯수를 세어 더 많은 쪽의 갯수를 출력하면 되는 문제임

#include <iostream>
#include <cstdio>

using namespace std;

char castle;
int Rowcnt[100];
int Colcnt[100];

int main()
{
    int n,m;
    int i,j;

    cin >> n >> m;

    for(i=0;i<n;i++)
    {
        for(j=0;j<m;j++)
        {
            scanf(" %c",&castle);
            if(castle!='.')
            {
                Rowcnt[i]=1;
                Colcnt[j]=1;
            }
        }
    }
    int rowsum = 0;
    int colsum=0;
    for(i=0;i<n;i++) rowsum+=Rowcnt[i];
    for(i=0;i<m;i++) colsum+=Colcnt[i];

    cout << max(n-rowsum,m-colsum) << endl;

    return 0;
}
반응형