티스토리 뷰

Algorithm/SW Expert Academy

1215 회문1

henry1214 2018. 3. 28. 20:31

https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14QpAaAAwCFAYi



지도 전체를 스캔하면서 길이가 n인 가로, 세로의 팰린드롬의 개수를 세준다.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <cstdio>
 
int main()
{
    for(int k=1;k<=10;k++)
    {
        int n,cnt=0;
        scanf("%d",&n);
        char map[8][9];
        for(int i=0;i<8;i++)
            scanf("%s",map[i]);
        for(int i=0;i<8;i++)
        {
            for(int j=0;j<8;j++)
            {
                if(i+n<=8)
                {
                    bool f=true;
                    for(int a=i,b=i+n-1;a<i+n/2;a++,b--)
                        if(map[a][j]!=map[b][j]) f=false;
                    if(f) cnt++;
                }
                if(j+n<=8)
                {
                    bool f=true;
                    for(int a=j,b=j+n-1;a<j+n/2;a++,b--)
                        if(map[i][a]!=map[i][b]) f=false;
                    if(f) cnt++;
                }
            }
        }
        printf("#%d %d\n",k,cnt);
    }
    return 0;
}
cs


'Algorithm > SW Expert Academy' 카테고리의 다른 글

2817 부분 수열의 합  (0) 2018.04.11
1206 View  (0) 2018.03.28
4047 영준이의 카드 카운팅  (0) 2018.03.27
1249 보급로  (0) 2018.03.27
4050 재관이의 대량 할인  (0) 2018.03.27
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday