본문 바로가기
반응형

분류 전체보기272

[알고리즘] 연산자 끼워넣기 포인트 dfs 를 잘 이해하고 있는가? 연산자를 재귀적으로 계산에서 붙여놓자. 🧶문서는 항상 수정 될 수 있습니다. 비판은 환영합니다. c++/cpp #include using namespace std; int n; int map[11]; int a, b, c, d; int target, maxValue, minValue; void dfs(int index, int cnt, int plus, int minus, int multiple, int divide, int sum) { if (cnt == target) { maxValue = max(maxValue, sum); minValue = min(minValue, sum); return; } if (plus < a) dfs(index + 1, cnt + 1.. 2020. 10. 13.
[알고리즘] c++ cpp 치즈 포인트 1. bfs 를 잘 할 수 있는가? 2. 아이디어는 중요한 것 같다. (외부 공기는 1개로 연결되어 있다. ) - 외부 공기 표시 ->(외부 공기 세기-> 치즈 녹이기 -> 외부 공기 다시 표시 (loop)) -> 결과 🧶문서는 항상 수정 될 수 있습니다. 비판은 환영합니다. #include #include #include #define MAX 100 using namespace std; int n, m; int map[MAX][MAX]; int visited[MAX][MAX]; int dx[] = {0, 0, 1, -1}; int dy[] = {1, -1, 0, 0}; queue nq; void outAir() { queue q; /* 외부 공기와 내부 공기를 분리하는 작업. */ q.push(.. 2020. 10. 12.
[알고리즘] c++ cpp 빙산 포인트 1. bfs를 잘 이해할 수 있는가? 2. map을 복사해서 잘 사용을 할 수 있는가? 🧶문서는 항상 수정 될 수 있습니다. 비판은 환영합니다. #include #include #include #include using namespace std; int n, m; int map[300][300]; int cmap[300][300]; bool visited[300][300]; int dx[] = {0, 0, 1, -1}; int dy[] = {1, -1, 0, 0}; void bfs(int a, int b) { queue q; q.push({a, b}); visited[a][b] = 1; while (!q.empty()) { int x, y; tie(x, y) = q.front(); q.pop();.. 2020. 10. 12.
[알고리즘] c++ cpp 구슬탈출 시리즈 (구슬탈출1) 포인트 1. bfs를 잘 할 수 있는가? 2. 조건을 이해할 수 있는가? 🧶문서는 항상 수정 될 수 있습니다. 비판은 환영합니다. #include #include #include using namespace std; int n, m; char map[11][11]; bool visited[11][11][11][11]; int dx[4] = {0, 0, -1, 1}; int dy[4] = {1, -1, 0, 0}; int rx, ry, bx, by; int bfs() { queue q; q.emplace(rx, ry, bx, by); visited[rx][ry][bx][by] = true; int result = 0; while (!q.empty()) { int size = q.size(); while (.. 2020. 10. 9.
반응형