컴공 일기248
게시글 주소: https://ys.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를 선물하세요.
-
안녕하세요 06(빠른) 재수생입니다. 작년 수능 때 1년을 어머니(분조장)와 사실상...
-
또또 2
외국인 전통음식 만드네 이시간에..냄새 다퍼지잖소 형님 시차적응 온지 1년...
-
11시에일어나기 2
일어나지 못할 수 있는 것은 아니다
-
내일 아침 시험이면 무조건 밤 사는데 오후랑 저녁 시험이라.. 애매하네
-
교양 두개 둘다 중간 C+ 이네 싸발 ㅋㅋㅋㅋ 기말 때는 시험공부 해야겠다 이젠...
-
에어로 가야하나요?아이패드10은 안 될까요?
-
반절했다 3
어휴 하기싫어
-
음 보고서 작성 스무스 10
이번거 진짜 스무스 하게 작성한듯..
-
이별…. 0
하 수능17일전에 차이네 수능 어떡하냐 응 5분만에 재결합
-
많이 보이는 두상이랑 얼굴 아님? 생글생글 웃어서 좋은데 두상이랑 얼굴 자체는...
-
4시까지 눈감고있다가 닭발 먹을라했는데 왜 30분이나 일찍 온거야아...힝
-
좀 많이 뒷북이긴 한데 오르비 활동을 시작하려구 하는데 뱃지 신청하고 메일 답장한지...
-
하 4
라면먹어야지
-
작년엔 미달나고 올해부터 2과목 안해도 되서 ㅠㅠ 평백 95정도 될까 컷 ㅠㅠ
-
ㅋㅋㅋㅋ
-
사실은 루틴인걸
-
저는 귀 심심한거 싫어해서 유튜버들 노가리 영상 틀어두고 자는데 먼가먼가 수면...
-
렙업 2
으헤헤
-
진짜 제발 낮 1-2시되먼 잠와서 엎드려수 4-5시간 자고 그캄 ㅜㅜ
-
조때따
-
기침 멎는법 7
알려주실분
-
내꿈인데 5
닉 이거달고 고대뱃지 갖고올게에^.^
-
어제 오늘 4시간씩 잔 셈칠까
-
ㅜㅜ 어려어
-
안 예쁜 사람이 없던데 진짜 고양이랑 개똑같았음 하 기여어
-
학원계속빠지는데,,,,,,,
-
캐르릉 6
능지떡락
-
아 조짐 1
잠이 안 와
-
아까 이정환수능리허설1회차 풀었을 땐 공통 4점 6개씩 처 틀려서 기분 ㅈ같았는데...
-
밤 새야하는데 16
안자더라도 눈 감고있으면 피로 회복에 도움 되나요
-
1. 일단 이목구비 뚜렷하기보단 살짝 맹 해야함 2. 담배,문신 절대 안되고 술도...
-
프사바꿨어요 0
쁘이 하는 박준우로
-
글 쓰는 일 3
수능이 얼마 남지 않아서 그런가 예상치 못한 노벨 문학상의 여파로 인한 것 인지...
-
메탄올을 한 모금(아님)
-
누가 젤 나음? 배기범 비역학은 좀 아니라는 소리를 들어서요.
-
다음 프사 당첨
-
난 왜 황인범하고 이재성이 더 잘하는것 같지??ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
-
이새긴 수험생이면서 세시까지 유튜브 쳐보네 ㅈㅈ
-
이번시즌 사실상 윙백 두명 영입인데 수비진이 얼마나 없으면 키비오르 쓰냐 ㅋㅋ
-
믿을 수 없다,,,,,,,,,,,,
-
은근슬쩍 폰번써서
-
기출이 얼마나 중요하다 생각해?물론 전과목 다 기출이 중요하다는건 알지 근데 얼마나...
-
ㅇㅈ 5
핼창 호소인
-
순조로운 과제 진행 16
-
허준 현대소설 저만 뭔소리하는지 모르겠음?? 특히 중략 이후 나오는 문단 자체가...
-
ㅠㅡㅠ 일찍 일어나자 파이팅
-
그때 못해서 재수강하는 건데 지금 다시 하니까 너무 쉬워 확실히 더 어려운 과목으로...
-
나놀아주어서고마워(내가놀아주는거지만) 나도.맨날말안예쁘게하고 머라고하고...
-
두렵다
-
벌써 새벽이 되었구나
질문 받나요??
남겨주시면 아는 선에서 답해드리겠습니다.
컴공에서 나이 많은 사람 몇살까지 보셨나요??
개인플레이가 지배적인 분위기라… 나이를 잘 모릅니다만 남자의 경우 26-28에 졸업하는 경우가 보편적이라고 생각은 합니다.