top of page

소스 코드 제출

공개·회원 51명

손유준손유준
손유준

20251128

#include <stdlib.h>

#include <stdio.h>

#include <string.h>


int N, M;

int dy[8] = {0, 0, -1, 1};

int dx[8] = {-1, 1, 0, 0};

int matrix[1000][1000];

int ans = 0;


void dfs(int y, int x, int prev, int d) {

int k;

int ny, nx;

int c;

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

ny, nx = y + dy[k], x + dx[k];

if (0 <= ny && ny < N && 0 <= nx && nx < M) {

if (abs(matrix[ny][nx] - prev) == 1) {

c = matrix[ny][nx];

matrix[ny][nx] = -1;

if (ny == N - 1 && nx == M - 1) {

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

return;

}

dfs(ny, nx, c, d + 1);

}

}

}

}

int main() {

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

int i, j;

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

for (j = 0; j < M; j ++) {

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

}

}

dfs(0, 0, matrix[0][0], 0);

return 0;

}

6회 조회
주소 : 경기도 용인시 광교중앙로 302 블루 스퀘어 602호
연락처 : 031) 216 - 1546 ,     031) 215 - 1546
사업자등록번호 : 465-92-00916
​학원 등록 제 4603호
bottom of page