컴공 일기248
백준 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학기: 4.3 1학년 2학기: 1.0 2학년 1학기: 1.0 2학년...
-
나를 걱정했었나요
-
문과에서 공대갈려고 지금부터 잇올 드가서 2달 반수컷 가능한가 하는게 맞나 하 진짜 어떡하지
-
질문받음 12
-
연락하나하나에 일희일비하고 맛집 전시회 찾아보면서 데이트코스 고민하고 그러고싶네
-
그 원서를 내가 어떻게 썼는지는 못 보나? 한자 이름 영어 이름 이상하게 한 것 같아서
-
탐구가 2후반은 돼야 가능한가
-
미적,기하는 선택과목이니까 확통을 선택한다면 미적분 기하는 공부하지 않고 수상하...
-
지구 질문.. 1
이상황이 정체전선이 있는 상황인데 여기서 A지역의 풍향을 어떻게 알수있나요? 제가...
-
9모 41211인데 다른과목 비중 줄이고 저번주부터 기출 ebs다시보고있습니다...
-
수시 원서 사진 4
재수생인데 수시 원서 사진을 작년에 찍은 민증 사진으로 해도 될까요? 지금 민증에...
-
지장있음???!!!!!
-
원서 못해먹겠슴 4
옯크아아악 머리 빠질것같아
-
가을이구나 수능의 계절
-
너는 힘을빼도 돼 그저 복사꽃 핀 거릴 걷자
-
이대 인문 논술 준비해 보고 싶은데 3합 6을 맞출 자신이 없어요 수리 논술 2합...
-
이만명은 늘줄 알았는데
-
어렵게 전화를 걸어볼까 생각이 들 때도 많지만 베비 아 노 잇츠얼레디 오버
-
슬기롭게 지방의대 수시 원서 넣고 오르비 보는데요…의평원 불인증 때문에 의대를 가도...
-
평가원은 ㄹㅇ 1
이상 << 이거 안낼 수가 없을듯 전형적인 문학의 비문학화 + 관서별곡 + 관동별곡...
-
기계vs전전 1
논술쓸건디 뭘로쓰져 붙기만 하면 됨
-
입문n제~중난도n제정도면 괜찮을 거 같아요 문해전s1 첫n제로 풀었는데 되게...
-
시중 문제집 추천해주실 수 있나여?? 개념형 문제도 여러번 풀어보고싶어서 자이스토리...
-
많이 주문하나요??
-
https://youtu.be/oH2pZx4_uEM?feature=shared 무반주《--Goat
-
수시로 넣어볼까하는뎅
-
만약에 제 이름이 김철수라고 할 때 원서에 Kim ChulSoo 이렇게 적어버렸는데...
-
88 넘겨본적이 없음 점수가 84 88인거 보면 수능에선 1컷 정돈가..
-
ㅈㄱㄴ 지구정법 하고싶은데
-
한달 컷 합격 드간다
-
논술핑 교과핑 수시핑 정시핑
-
연애하고 싶다.. 자야지..쩝
-
수시 메디컬 0
수능 성적 어느 정도면 수시 메디컬로 가도 개꿀빨았다는 소리 안 나올까요? 갑자기...
-
그냥 상향도 아님 ㅈㄴ우주상향임 모두들 정시파이터를 납치해가시길..
-
항상화가나있어
-
오야스미 1
네루!
-
논술 첨보는데ㅜ쓸까 고민중인데..난이도 어떤가요?? 강의실에서 보나요 아니면...
-
9모에 냈던 백석 시 그대로 있네 9모 났으면 문항 교체 해주지
-
물1 지1인데 지금이라도 물1 버리고 물2 할까? 물1 개념 기출은 다 돌림
-
정신적 힘듬 2
진짜 정신병 걸린 것 같고 아직 고2인데 대학 못가면 인생이 끝나는 것 같고 자사고...
-
답이 있음에도 불구하고 오답을 향해 불나방처럼 달려드는 수험생을 보니 이건 특별법...
-
ㅋㅋㅋ똥 3
ㅋㅋ발싸
-
6논술 2
주변에 쓰는 사람 많나요?
-
제가 못 찾은것 같긴한데 따로 등급컷 집계는 안하나요??
-
84 96 87 47 45 보니까 영어 지구도 좆됐네 홍대 탈출 언제 하리오
-
이번 후반기 네카라쿠배 0명 (한자릿수이야기 아니고 아예안뽑)아닌가?
-
학교이서 혼자 묵묵히 사탐하나
-
안된다고하던데 허락맡고 썼다는 분들은 뭐죠?? 부정행위인가
질문 받나요??
남겨주시면 아는 선에서 답해드리겠습니다.
컴공에서 나이 많은 사람 몇살까지 보셨나요??
개인플레이가 지배적인 분위기라… 나이를 잘 모릅니다만 남자의 경우 26-28에 졸업하는 경우가 보편적이라고 생각은 합니다.