728x90
반응형
https://www.acmicpc.net/problem/3495
3495번: 아스키 도형
창영이는 메모장에 '.', '\', '/'을 이용해서 도형을 그렸다. 각 문자는 그림에서 1*1크기의 단위 정사각형을 나타낸다. '.'은 빈 칸을 나타내며, '/'는 정사각형의 왼쪽 아래 꼭짓점과 오른쪽 위 꼭짓
www.acmicpc.net
#include <iostream>
using namespace std;
int main() {
int h, w, ans = 0;
string board[100];
cin >> h >> w;
for(int i = 0; i < h; i++){
cin >> board[i];
int s = 0;
for(int j = 0; j < w; j++){
if(board[i][j] != '.'){
s++;
ans += 1;
}
if(s % 2 == 1 && board[i][j] == '.'){
ans += 2;
}
}
}
cout << ans / 2 << endl;
return 0;
}
'/'이나 '\'은 1/2의 넓이를 갖고, '.'일 때는 도형 안에 있는 경우에만 넓이 1을 더해주어야 한다.
줄마다 '/'이나 '\'의 개수가 홀수일 때 도형이 열린 것이고, 짝수일 때 도형이 닫힌 것이다.
728x90
반응형
'Algorithm > BAEKJOON' 카테고리의 다른 글
[BOJ] 15989번 1, 2, 3 더하기 4 (C++) (0) | 2022.02.14 |
---|---|
[BOJ] 16165번 걸그룹 마스터 준석이 (C++) (0) | 2022.02.14 |
[BOJ] 21966번 (중략) (C++) (0) | 2022.02.13 |
[BOJ] 1461번 도서관 (C++) (0) | 2022.02.13 |
[BOJ] 11652번 카드 (C++) (0) | 2022.02.12 |