Skip to content

Commit 24c2f5c

Browse files
committed
update README.md
1 parent f915930 commit 24c2f5c

File tree

2 files changed

+140
-36
lines changed

2 files changed

+140
-36
lines changed

README.md

Lines changed: 38 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,44 @@ Personal Solution of Algorithm Probs
44

55
## [백준 온라인 저지](https://www.acmicpc.net/)
66

7+
### 테마별로 풀어보기
8+
9+
#### BFS/DFS
10+
- [2146](https://www.acmicpc.net/problem/2146) : 다리 만들기 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2146.cpp)
11+
- [1926](https://www.acmicpc.net/problem/1926) : 그림 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/1926.cpp)
12+
- [2178](https://www.acmicpc.net/problem/2178) : 미로탐색 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2178.cpp)
13+
- [1012](https://www.acmicpc.net/problem/1012) : 유기농 배추 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/1012.cpp)
14+
- [1697](https://www.acmicpc.net/problem/1697) : 숨바꼭질 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/1697.cpp)
15+
- [7576](https://www.acmicpc.net/problem/7576) : 토마토 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/7576.cpp)
16+
- [7569](https://www.acmicpc.net/problem/7569) : 토마토(3차원) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/7569.cpp)
17+
- [9466](https://www.acmicpc.net/problem/9466) : 텀 프로젝트 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/9466.cpp)
18+
- [2667](https://www.acmicpc.net/problem/2667) : 단지 번호 붙이기 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2667.cpp)
19+
- [2206](https://www.acmicpc.net/problem/2206) : 벽 부수고 이동하기 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2206.cpp)
20+
- [2583](https://www.acmicpc.net/problem/2583) : 영역 구하기 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2583.cpp)
21+
- [7562](https://www.acmicpc.net/problem/7562) : 나이트의 이동 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/7562.cpp)
22+
- [10026](https://www.acmicpc.net/problem/10026) : 적록색약 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/10026.cpp)
23+
- [2468](https://www.acmicpc.net/problem/2468) : 안전영역 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2468.cpp)
24+
- [2573](https://www.acmicpc.net/problem/2573) : 빙산 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2573.cpp)
25+
- [5427](https://www.acmicpc.net/problem/5427) : 불 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/5427.cpp)
26+
- [5014](https://www.acmicpc.net/problem/5427) : 스타트링크 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/5014.cpp)
27+
- [6593](https://www.acmicpc.net/problem/5427) : 상범빌딩 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/6593.cpp)
28+
29+
#### 백트랙킹/시뮬레이션
30+
- [9963](https://www.acmicpc.net/problem/9963) : N-Queen = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/9963.cpp)
31+
- [15649](https://www.acmicpc.net/problem/15649) : N과 M(1) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15649.cpp)
32+
- [15650](https://www.acmicpc.net/problem/15650) : N과 M(2) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15650.cpp)
33+
- [15651](https://www.acmicpc.net/problem/15651) : N과 M(3) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15651.cpp)
34+
- [15652](https://www.acmicpc.net/problem/15652) : N과 M(4) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15652.cpp)
35+
- [15654](https://www.acmicpc.net/problem/15654) : N과 M(5) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15654.cpp)
36+
- [15655](https://www.acmicpc.net/problem/15655) : N과 M(6) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15655.cpp)
37+
- [15656](https://www.acmicpc.net/problem/15656) : N과 M(7) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15656.cpp)
38+
- [15657](https://www.acmicpc.net/problem/15657) : N과 M(8) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15657.cpp)
39+
- [15663](https://www.acmicpc.net/problem/15663) : N과 M(9) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15663.cpp)
40+
- [15664](https://www.acmicpc.net/problem/15664) : N과 M(10) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15664.cpp)
41+
- [15665](https://www.acmicpc.net/problem/15665) : N과 M(11) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15665.cpp)
42+
- [15666](https://www.acmicpc.net/problem/15666) : N과 M(12) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15666.cpp)
43+
44+
745
### 단계별로 풀어보기
846

947
#### [1.입출력 받아보기](https://www.acmicpc.net/step/1)
@@ -76,39 +114,3 @@ Personal Solution of Algorithm Probs
76114
- [10989](https://www.acmicpc.net/problem/10989) : 수 정렬하기 3 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/10989.cpp)
77115
- [2108](https://www.acmicpc.net/problem/2108) : 통계학 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2108.cpp)
78116
- [1427](https://www.acmicpc.net/problem/1427) : 소트인사이드 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/1427.cpp)
79-
80-
### 테마별로 풀어보기
81-
82-
#### BFS/DFS
83-
- [2146](https://www.acmicpc.net/problem/2146) : 다리 만들기 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2146.cpp)
84-
- [1926](https://www.acmicpc.net/problem/1926) : 그림 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/1926.cpp)
85-
- [2178](https://www.acmicpc.net/problem/2178) : 미로탐색 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2178.cpp)
86-
- [1012](https://www.acmicpc.net/problem/1012) : 유기농 배추 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/1012.cpp)
87-
- [1697](https://www.acmicpc.net/problem/1697) : 숨바꼭질 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/1697.cpp)
88-
- [7576](https://www.acmicpc.net/problem/7576) : 토마토 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/7576.cpp)
89-
- [7569](https://www.acmicpc.net/problem/7569) : 토마토(3차원) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/7569.cpp)
90-
- [9466](https://www.acmicpc.net/problem/9466) : 텀 프로젝트 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/9466.cpp)
91-
- [2667](https://www.acmicpc.net/problem/2667) : 단지 번호 붙이기 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2667.cpp)
92-
- [2206](https://www.acmicpc.net/problem/2206) : 벽 부수고 이동하기 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2206.cpp)
93-
- [2583](https://www.acmicpc.net/problem/2583) : 영역 구하기 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2583.cpp)
94-
- [7562](https://www.acmicpc.net/problem/7562) : 나이트의 이동 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/7562.cpp)
95-
- [10026](https://www.acmicpc.net/problem/10026) : 적록색약 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/10026.cpp)
96-
- [2468](https://www.acmicpc.net/problem/2468) : 안전영역 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2468.cpp)
97-
- [2573](https://www.acmicpc.net/problem/2573) : 빙산 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/2573.cpp)
98-
- [5427](https://www.acmicpc.net/problem/5427) : 불 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/5427.cpp)
99-
- [5014](https://www.acmicpc.net/problem/5427) : 스타트링크 = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/5014.cpp)
100-
101-
#### 백트랙킹/시뮬레이션
102-
- [9963](https://www.acmicpc.net/problem/9963) : N-Queen = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/9963.cpp)
103-
- [15649](https://www.acmicpc.net/problem/15649) : N과 M(1) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15649.cpp)
104-
- [15650](https://www.acmicpc.net/problem/15650) : N과 M(2) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15650.cpp)
105-
- [15651](https://www.acmicpc.net/problem/15651) : N과 M(3) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15651.cpp)
106-
- [15652](https://www.acmicpc.net/problem/15652) : N과 M(4) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15652.cpp)
107-
- [15654](https://www.acmicpc.net/problem/15654) : N과 M(5) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15654.cpp)
108-
- [15655](https://www.acmicpc.net/problem/15655) : N과 M(6) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15655.cpp)
109-
- [15656](https://www.acmicpc.net/problem/15656) : N과 M(7) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15656.cpp)
110-
- [15657](https://www.acmicpc.net/problem/15657) : N과 M(8) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15657.cpp)
111-
- [15663](https://www.acmicpc.net/problem/15663) : N과 M(9) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15663.cpp)
112-
- [15664](https://www.acmicpc.net/problem/15664) : N과 M(10) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15664.cpp)
113-
- [15665](https://www.acmicpc.net/problem/15665) : N과 M(11) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15665.cpp)
114-
- [15666](https://www.acmicpc.net/problem/15666) : N과 M(12) = [풀이](https://github.com/devOTTO/Algorithm-Study/blob/master/baekjoon/15666.cpp)

baekjoon/6593.cpp

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
//
2+
// Created by 융미 on 2019-05-03.
3+
//6593 상범 빌딩
4+
#include <iostream>
5+
#include <tuple>
6+
#include <queue>
7+
#include <cstring>
8+
using namespace std;
9+
#define MAX 30
10+
11+
int dx[6] = {1,-1,0,0,0,0};
12+
int dy[6] = {0,0,-1,1,0,0};
13+
int dz[6] = {0,0,0,0,1,-1};
14+
15+
int l,r,c;
16+
tuple<int,int,int> start;
17+
tuple<int,int,int> escape;
18+
19+
int dis[MAX][MAX][MAX];
20+
char arr[MAX][MAX][MAX];
21+
22+
void initMEM(){
23+
memset(dis,-1,sizeof(dis));
24+
memset(arr,' ', sizeof(arr));
25+
}
26+
27+
28+
void bfs(){
29+
30+
31+
queue<tuple<int,int,int>> q;
32+
q.push(start);
33+
dis[get<0>(start)][get<1>(start)][get<2>(start)] = 0;
34+
35+
while(!q.empty())
36+
{
37+
auto cur = q.front();
38+
q.pop();
39+
int z = get<0>(cur);
40+
int x = get<1>(cur);
41+
int y = get<2>(cur);
42+
43+
44+
45+
for(int i = 0; i<6; i++)
46+
{
47+
int nz = z + dz[i];
48+
int nx = x + dx[i];
49+
int ny = y + dy[i];
50+
51+
52+
if(nx < 0 || nx >= r || ny < 0 || ny >= c || nz < 0 || nz >= l) continue;
53+
54+
if(dis[nz][nx][ny] != -1) continue;
55+
if(arr[nz][nx][ny] == '#') continue;
56+
57+
q.push(make_tuple(nz,nx,ny));
58+
dis[nz][nx][ny] = dis[z][x][y] + 1;
59+
60+
}
61+
}
62+
}
63+
64+
int main(){
65+
ios::sync_with_stdio(0);
66+
cin.tie(0);
67+
char t;
68+
69+
while(true){
70+
cin >> l >> r >> c;
71+
if(l == 0 && r == 0 && c == 0) break;
72+
initMEM();
73+
for(int i = 0; i<l; i++)
74+
{
75+
for(int j = 0; j<r; j++)
76+
{
77+
for(int k = 0; k<c; k++)
78+
{
79+
cin >> t;
80+
arr[i][j][k] = t;
81+
if(arr[i][j][k] == 'S')
82+
start = make_tuple(i,j,k);
83+
else if(arr[i][j][k] == 'E')
84+
escape = make_tuple(i,j,k);
85+
}
86+
}
87+
}
88+
89+
90+
91+
bfs();
92+
93+
if(dis[get<0>(escape)][get<1>(escape)][get<2>(escape)] != -1){
94+
cout << "Escaped in " << dis[get<0>(escape)][get<1>(escape)][get<2>(escape)] << " minute(s)." << '\n';
95+
}
96+
else cout << "Trapped!"<< '\n';
97+
}
98+
99+
100+
101+
return 0;
102+
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy