메뉴 건너뛰기

Programing

BAEKJOON

14430

관리자 2019.12.21 19:27 조회 수 : 6

C++

#include <cstdio>

#include <cstring>

#include <algorithm>

using namespace std;

int dt[310][310];

int map_[310][310];

int N,M;

int serch(int x,int y){

    if(dt[y][x]!=-1)

        return dt[y][x];

    int c=0;

    if(map_[y][x]==1)

        c=1;

    int a=c,b=c;

    if(x<M){

        a+=serch(x+1,y);

    }

    if(y<N){

        b+=serch(x,y+1);

    }

    return dt[y][x] = max(a,b);

}

int main()

{

    memset(dt,-1,sizeof(dt));

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

    for(int i=1;i<=N;i++){

        for(int j=1;j<=M;j++){

            scanf("%d",&map_[i][j]);

        }

    }

    printf("%d",serch(1,1));

    return 0;

}

번호 제목 글쓴이 날짜 조회 수
공지 안내사항 관리자 2019.12.21 164
» 14430 관리자 2019.12.21 6
14 1182 관리자 2019.12.21 8
13 11660 관리자 2020.04.11 46
12 1149 관리자 2019.12.21 8
11 10999 관리자 2020.04.11 47
10 10937 관리자 2020.04.11 41
9 10919 관리자 2020.04.11 42
8 10800 관리자 2019.12.21 8
7 10799 관리자 2019.12.21 9
6 10534 관리자 2020.04.11 44
5 10164 관리자 2019.12.21 6
4 10159 관리자 2019.12.21 6
3 10157 관리자 2019.12.21 8
2 10070 관리자 2020.04.11 44
1 1005 관리자 2019.12.21 8
위로