컴공 일기248
게시글 주소: https://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이면 한국사 있으면 1.22...
-
어디갈거야? 취업까지고려해서
-
굇수님들 3
컨텐츠 리뷰 많이 많이 해줫으면 좋겟다는 거임
-
정석민 듣는데 양이 너무적어서 같이 풀거 투표좀
-
7일차 목표 0
자이 수1 마무리 자이 수2 극한값 계산은 끝내고 생명 수특,수완 신경 국어 관서별곡 1지문
-
이게 수요가 있어..?
-
똑같이 취직이 안 돼서 일반과 분들 화이팅하십쇼
-
1.학생과 친해진다 2.노베학생을 갱생시킨다 Ex)모닝콜,전과목커리짜주기,정신교육...
-
돈 없어서 엉엉 울었어 ㅠㅡㅠ
-
당시 서울대 투필수에 설화생공이 삼룡의 다 따던 시절 친구들 중에 원원으로...
-
올해 펑크 0
한쪽이 펑크면 한쪽은 폭이 나야하는거 아닌가요?? 1대1 대응이 아닌가... 왜...
-
13살로 돌려줘라.
-
메인 보내줘 17
사랑해 옯붕이들아
-
닉언 죄송) ㅈㅂ은 17
의뱃 중앙뱃 성뱃 -> 중앙의일까 성의일까 학교뱃지는 없는 인설의일까 궁금 궁금
-
끝내야만 한다.. 풀연등 가보자고
-
현역땐 확통했었고 수1 수2까지 3등급 정도 받고 예체능이라 수학을 접었었는데...
-
24시간 넘게 밥을 귀찮아서 안 먹느라 약도 두 번이나 걸렀거든요... 방금 끼니는...
-
실모 풀때 스트레스 받겠지만 ㅠㅠ 일단은 과학유튜브 보는 느낌
-
칼럼가튼것들,, 도움 마니 된다는 거임.수능 한개도 몰랏는데 (뉴런이라는 책도...
-
고인물 다수 참전인데 밑바닥층이 워낙 탄탄한가
-
이딴 생각을 할 시간에 행동으로 옮기는게 더 중요한듯
-
학교가 멀어서 서럽네 10
꼭두새벽부터 출발해야함
-
수능 때 1컷 50 뜬 건 문제가 쉬운 편이였으니 그러려니 함 근데 10평 때 1컷...
-
크으윽추워 3
으으으윽
-
내일 서빙알바 2회차 16
저번엔 안 바뻐서 망정이지 이번에 바쁘면 뇌 하얘질거같네
-
말 놓는대신 나도 과외생이 못할때 욕하기로 합의봄
-
2트) 물2 화2 중에 하나해야한다면 님들은 뭐할거임 10
이유도좀
-
님들 어차피 아가인 이하는 싫잖아요 사1과1에 비해 얻는 이점이 삼룡+성울이 끝인데...
-
어떻게 생각하시나요? 같은책을 5번씩보고 계속 반복하는게 수학 실력 상승에 도움이...
-
어려워서 듣기 망치고 배아파서 읽기 망침 토익 공부 안해보긴 했는데 감안해도 어렵네
-
지금 김준쌤 chemistory 필수이론 강의보면서 히고있는데 이것도 어려울만큼...
-
누굴까
-
최상위권X 현재 서성한~중경외시 라인
-
나 좀 만만한가봄 16
고2 짜리 애가 기싸움을 걺 근거 문장 찾은거 설명해볼래? 하니까 샤프로 밑줄 띡...
-
근육에서 사세요 풉ㅋㅋㅋㅋ
-
최애 미쿠 투표 2
ㄱ
-
혁신도시에서 사세요 학군도 괜찮고 요새는 들어온 시설이 많아져서 나름 괜찮아요 집...
-
꾸덕한건 기본에 나 고급춱헐릿이야 하고 티를 뿜뿜내요아주,,
-
저 동글뱅이에 I 들어간거
-
헉
-
문학황 필독 10
3번 선지에서 는 과도기때 합리적인 태도를 보인다고 했는데 3번에선 합리적인 방식이...
-
탐구 개념 0
귀찮아아ㅏ아ㅏ아 언매는 더 귀찮아ㅏㅏㄱ!!
-
안녕하세요 1
반가우어요
-
어디가나요
-
오도레~
-
연대 지망 문돌이 필독 24
수학은 5여도 가니까 중간 3정도만 띄우고 국어영어만 ㅈㄴ해라. 사탐은 11띄울거라...
질문 받나요??
남겨주시면 아는 선에서 답해드리겠습니다.
컴공에서 나이 많은 사람 몇살까지 보셨나요??
개인플레이가 지배적인 분위기라… 나이를 잘 모릅니다만 남자의 경우 26-28에 졸업하는 경우가 보편적이라고 생각은 합니다.