메뉴 건너뛰기

Programing

BAEKJOON

14503

관리자 2019.12.21 19:28 조회 수 : 7

C++

#include <cstdio>

 

using namespace std;

 

int map_[55][55];

int cnt=0;

int R,C,N,M,D;

int dc[4]={0,-1,0,1};

int dr[4]={-1,0,1,0};

int dir[4]={0, 3, 2, 1};

int main()

{

    scanf("%d %d",&N,&M);

    scanf("%d %d %d",&R,&C,&D);

    for(int r=0;r<N;r++){

        for(int c=0;c<M;c++){

            scanf("%d",&map_[r][c]);

        }

    }

 

    D = dir[D];

    while(1){

        if(map_[R][C]==0){

            map_[R][C]=2;

            cnt++;

        }

        int i;

        for(i=0;i<4;i++){

            D = ( D + 1 ) % 4;

            if(map_[R+dr[D]][C+dc[D]]==0){

                R+=dr[D];

                C+=dc[D];

                break;

            }

        }

        if(i==4){

            R-=dr[D];

            C-=dc[D];

            if(map_[R][C]==1){

                break;

            }

        }

 

 

    }

    printf("%d",cnt);

    return 0;

}

번호 제목 글쓴이 날짜 조회 수
공지 안내사항 관리자 2019.12.21 163
45 2468 관리자 2019.12.21 8
44 2458 관리자 2020.04.11 44
43 2457 관리자 2020.04.11 47
42 2454 관리자 2020.04.11 43
41 2450 관리자 2020.04.11 40
40 2339 관리자 2020.04.11 41
39 2307 관리자 2019.12.21 8
38 2250 관리자 2019.12.21 8
37 2233 관리자 2019.12.21 6
36 2170 관리자 2019.12.21 7
35 2132 관리자 2019.12.21 7
34 2096 관리자 2019.12.21 8
33 2042 관리자 2020.04.11 45
32 2003 관리자 2020.04.11 39
31 1991 관리자 2019.12.21 8
30 1967 관리자 2019.12.21 6
29 1966 관리자 2020.04.11 45
28 1946 관리자 2020.04.11 39
27 1874 관리자 2020.04.11 43
26 1839 관리자 2020.04.11 44
25 17611 관리자 2019.12.21 7
24 1753 관리자 2019.12.21 8
23 1742 관리자 2020.04.11 6
22 1720 관리자 2020.04.11 6
21 16210 관리자 2020.04.11 57
20 16201 관리자 2020.04.11 44
19 15971 관리자 2019.12.21 6
18 14865 관리자 2019.12.21 8
» 14503 관리자 2019.12.21 7
16 14502 관리자 2019.12.21 6
위로