컴공 일기248
게시글 주소: https://i.orbi.kr/00068962554
백준 1937 DP / DFS 융합 문항 풀이
소감 : 본질은 DFS인데, DP의 메모이제이션 기법을 쓰지 않으면 시간 초과가 난다.
탐색 문제들은 제한 시간 + 데이터의 수를 적절히 참조하며 Time Complexity를 따져보는 것이 첫 번째다.
완전 탐색을 해야하는데, 시간이 넉넉하다면 DFS 논리 하나로 가볍게 끌고가도 되지만 데이터 수가 생각보다 많아
제한 시간 내 모든 탐색이 불가능할 것 같으면 DP 냄새를 맡을 줄 알아야 한다.
아니면 더 근본적으로 완전 탐색 상황을 의심해볼 수도 있지만…
대놓고 DFS 였으니 이 부분은 이 문제에서 큰 의미없는 접근이겠다.
#include <iostream>
#include <algorithm>
using namespace std;
// 상 -> 하 -> 좌 -> 우 순으로 DFS 탐색 순서를 정한다.
int dx[] = {-1, 1, 0, 0};
int dy[] = {0, 0, -1, 1};
int forest[501][501];
int DP[501][501];
int N; //find_max의 참조를 위해서 전역변수 선언
int find_max(int i, int j) {
if (DP[i][j] > 0) return DP[i][j]; // 메모이제이션
DP[i][j] = 1;
for (int k = 0; k < 4; ++k) {
int next_x = i + dx[k];
int next_y = j + dy[k];
if (0 <= next_x && next_x < N && 0 <= next_y && next_y < N) {
if (forest[i][j] < forest[next_x][next_y]) {
DP[i][j] = max(DP[i][j], find_max(next_x, next_y) + 1);
}
}
}
return DP[i][j];
}
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int res = -1; // 결과 변수
cin >> N;
for (int i = 0; i < N; ++i) {
for (int j = 0; j < N; ++j) {
cin >> forest[i][j];
}
}
for (int i = 0; i < N; ++i) {
for (int j = 0; j < N; ++j) {
res = max(res, find_max(i, j));
}
}
cout << res << “\n”;
return 0;
}
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
6모 92점, 9모 100점 나왔는데 지금까지 3회만 93점 맞고 다 2등급뜨네...
-
불간섭 추구하지 않음? 근데 왜 생태계에 대한 개입이 자연존중의 태도와...
-
푸는데 시간 안에 마무리 한적이 없네요 공부 잘못해왔나싶음,,,,,
-
시대인재북스에서 책 살려다가 교보로 사면 당일배송이라길래 취소하고 교보로 샀고...
-
ㅠㅠ집합 건너뛰어서 빈 개념이 좀 있어요 플리즈도와주세요
-
드라마나 볼까
-
진짜 엄임
-
캡모자를 착용하고 시험 보려고 하는데요. 감독관 재량에 따라 다르겠지만 불안장애...
-
음….. 0
히카는 80-84만 진동하네 그 이상으론 문제가 안 풀령
-
[지구과학1] 사설 모의고사에서 여러분들의 니즈는 무엇인가요 5
나중에 교재만들 때 참고하려고 합니다. 여러분들이 사설 ‘모의고사’에서 원하는...
-
뭐로 최종정리해요
-
혹시 안보면 진짜손해인가요 안정 2등급이고 1등급은 아주가끔나옴
-
과탐 << 타임어택이 사람 미치게함 특히 어려운 모의고사에서 시간 초단위로 딱 맞게...
-
문학 연계 0
나비와 철조망 내기 좋은 지문인 것 같은데 현재 상황이 상황인지라.... 안 나올 것 같음
-
흑석은 노잼이란 말이야
-
예전에 국어 화작만 거의 20분 가까이 걸리고 시간부족해서 마지막에 지문 한개...
-
어케 해야 알찬 세특이 될 수 있을까요 수학과 지망인데 1학기 수학1 세특이 완전...
-
공통1틀 미적 3틀 진짜 ㅅㅂ
-
인터넷은 물질 문화인가요 비물질 문화인가요? ’인터넷‘ 자체만 밑줄 긋고 물질...
-
근데 훈련소는 절대 과거미화가 안될 것 같음 너무 ㅈ같아...
-
생각만 해도 창피하네,,,,,, 고1때였나 교생왔을 때ㅡㅇㅈㄹ했음
-
이감 0
계속 1컷 부근에서 노는데 수능 잘 볼 수 있을까.
-
정시인원 거의 반을 줄였던데 경인이나 춘천은 대략적으로 어느정도여야 안정일까요...?
-
오르비 오류 2
왜 윗 댓글에 답글을 달았는데 아랫 댓글에 답글이 달리는지 궁금하네요 꽤 오래된...
-
ㅈㄴ 무서웠음. . .
-
연대 논술날 사람들 바글바글한 거처럼 고대 계적날도 바글바글 한가요?? 차 많이 밀리나요?
-
메인이라도 올려야 활동랭킹 좀 올라가려나
-
어떤 게 더 어려웠어요?
-
정법 개념 전체 복습 해버릴거임
-
네이버 시계로 시간 맞춰서 가면 그거에 맞게 울리나요?? 저희 학교에서는 시간이랑...
-
아직 안 들켜서 다행임요 이거 ㄷ,ㄹ키며느죽을거임
-
11월17일이 순국선열의날인데 공휴일로 하죠,,, 어떻게하루도못쉴수가있음
-
병x같은 짓해서 망치는건 진짜 용납이안대네 이런건 화가 진짜 머리끝까지나서 뒤에...
-
큰 거 올려볼까요 11
현강 마지막주 자료인데, 일부 오르비에 업로드할까 생각 중인 것들입니다. 1....
-
개씹유베N일의전사도전해보려고합니다…
-
진짜 개좋네 평가원보다 평가원같음
-
잡담태그 알림을 꺼주세요
-
유익한게 많이나오는데 넘어렵네요
-
상승의 26수능 0
이라고 하고 싶은데 여기선 할 수 있는게 많이 없네
-
ㄹㅇㄹㅇ.. 올해 다들 입시판 떠납시다
-
친구들한테 너 좀 귀찮다 소리 많이들음 뭔지 나도 아는데 절친한테만 들어서 괜찮은거같음
-
인생 나락가는중이네 15
지금까지 성적 나오는거 보면 수능때 변수가 있지않는한 어쩔 수 없이 삼수할거 같은데...
-
고려대 가고 싶어요...
-
으아아악
-
그리움, 성찰 일 것 같음
-
항상 다 맞긴 했는데 시간이 짧게 걸리지도 않고 특출난 것도 아니라; 그나마 선지...
질문 받나요??
남겨주시면 아는 선에서 답해드리겠습니다.
컴공에서 나이 많은 사람 몇살까지 보셨나요??
개인플레이가 지배적인 분위기라… 나이를 잘 모릅니다만 남자의 경우 26-28에 졸업하는 경우가 보편적이라고 생각은 합니다.