컴공 일기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를 선물하세요.
-
매체 언어 독서 (인문철학제외) 문학 인문철학 이렇게 푸는데 독서에서 자꾸...
-
아 근데 독서는 신청 못했는데 문학 맛있나요
-
솔직히 사설보다 교육청이 나은 거 같은데
-
1회 50 2,3,4회 44 5회 47인데 쉽다는 분들도 많길래 수능대비 난이도가...
-
화작확통생윤사문 88 93(15찍맞) 46 50
-
닥 후?
-
수능 부정행위임? 그거만 아니면 수능이후 책임은 모두 질 생각임 히터 바람오는걸...
-
수능전까지 그냥 사설모고 하나사서 벅벅하는거 또는 기존에 해온거 정리하고 감각은...
-
난이도 어땟어옆???? ㅠ 평소보다 못봐서 … 하
-
수1 수2 한권씩 하루에 다풀려면 몇시간걸리려나유 스텝23만
-
어디대학부터 옮기는게 유의미할까요?
-
에피 중경외시건동홍도 심심찮게 보임 센츄는 흔하고 ㄷㄷ…
-
내용 파악이 힘들고 상황 파악이 힘들게 글을 쓴거는 그냥 글을 못 쓴거 아닌가......
-
야댚 제본 맡길건데 4주차까지 있으면 좀 불편한데...
-
내년12월 중순부터 국어 인강을 제대로 들으려고 합니다. 지금 현재 강민철,정석민쌤...
-
왜 아무도 얘기를 안함..? 나 원래 많아봐야 3틀이었는데 8틀인데…?!
-
1컷 88 급이라고? ㅅㅂ 언미화생 84 93 2 50 47 약대 가능?
-
더프보고느낀점 0
수능때 커하 찍을 거라는 생각을 줄곧 해왔었는데 그냥 실수만 안하면 좋겠다..
-
빨간 줄 부분 해석인데 어디부터 잘못된건가요?? 수학황분들 부탁드립니다
-
왤케 언급이 없어
-
D-377 공부 10
-
국어인강 추천좀 2
고2인데 국어인강은 수국김듣다말았고 강민철이나 김동욱커리 타려고하는데 뭐가 괜찮음?...
-
그녀에게 들리게.
-
3번에 왜 4가 아니라 3이에요..? 아무리봐도 모르겠는데 진지하게 이번 독서중에...
-
6평백분위 99 10덮 100점 11이퀄 77점 매체 4개틀 ㅋㅋ
-
보통 몇분내로 풀어야 적당한가요 문제는10문제입니다
-
젤 부러운 분들.. 수능판도 미련없이 뜨실듯
-
근데 컴다운이 안되는데
-
좌절감을 느끼게됨
-
내일부터 열심히 해야지
-
언어과목은 아무리 공부해도 공부할때마다 뇌가 녹을 거 같은 피로도가 극심한 거 같음
-
상크스 0
선개완만 듣고 상크스 안 듣고 3뜰 수 있을까요 ? 유전 버리고
-
님들 수능장에서 파본검사 못하게 하면 어케할거임? 13
전 작년에 논쟁하기 귀찮아서 그냥 안 함
-
1. 제가 국어, 영어 지문을 읽을 때 입을 뻐끔뻐끔 하면서 읽는 버릇이 있는데,...
-
11 10 9 이 순서가 맞는듯 11이 젤어렵고
-
더프 궁예 0
더프 궁예 부탁드립니다 화작 66 확통 74 영어 3 생윤 42 윤사 43
-
확통사탐으로 성적 대충 어느정도 돼야해요? 갑자기 궁금
-
친구를 만나느라 샤샤샤 12
샤...
-
6모 난이도가 10점 만점에 5점이라 하면 수능은 몇 점일 거라 생각하세요?
-
모고나 교육청꺼 풀면 6나오거나 화작 운좋아서 다 맞으면 5나옵니다….너무 국어가...
-
10덮 1컷 48뜬거보니 11덮 48점 맞고도 안심을 못하겠네요..
-
씨뮬처럼 예전 기출별 45문항 그대로 첨삭 없이 들어있는 거 추천 좀 부탁드리겠습니다!!
-
의머 6
의머..
-
솔직하게 올해 6평 기준 백분위 눌러주시면 됩니다
-
그냥 근육통처럼 욱신거리네요,,뻐근하고,,어제부터 자고 일어나면 이래요 전에는 턱이...
-
메가패스 가격 2
이기상 손고운 때문에 메가 사야되는데 시간 지날수록 가격 더 올라가여? ㅜㅜ,,,...
-
121=9 141=33 151=65 181=513 1171=?
-
11덮 수학 3
88점(15,28,30틀) 위에 3개랑 22 남았을 때 15분 남아서 22번에 정수...
-
13틀 47임 살짝 쉬운거 같긴한데 무보1은 불가일까욤,,,
질문 받나요??
남겨주시면 아는 선에서 답해드리겠습니다.
컴공에서 나이 많은 사람 몇살까지 보셨나요??
개인플레이가 지배적인 분위기라… 나이를 잘 모릅니다만 남자의 경우 26-28에 졸업하는 경우가 보편적이라고 생각은 합니다.