목록그래프 (47)
정화 코딩

https://www.acmicpc.net/problem/9328 #include #include #include using namespace std;int dx[] = {1, -1, 0, 0};int dy[] = {0, 0, 1, -1};int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int tc; cin >> tc; while (tc--) { int h, w; cin >> h >> w; vector m(h); vector> chk(h, vector(w, false)); vector open(26, false); queue>..

https://www.acmicpc.net/problem/1647 #include #include #include using namespace std;int n, m;int parent[100001];vector> edge;int find(int a) { if (parent[a] == a) { return a; } else { parent[a] = find(parent[a]); return parent[a]; }}void unionf(int a, int b) { a = find(a); b = find(b); if (a != b) parent[b] = a;}int main() { ios_base::sync_with_stdio(0);..

https://www.acmicpc.net/problem/13460 #include #include #include using namespace std;int dx[] = {1, -1, 0, 0};int dy[] = {0, 0, 1, -1};int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, m; cin >> n >> m; vector> g(n, vector(m)); int ri, rj, bi, bj; for (int i = 0; i > s; for (int j = 0; j > q; vector>>> visited(n, vector>>(m, vector>(n, v..

https://www.acmicpc.net/problem/1238 #include #include using namespace std;int n, m, x;vector> g;int MAX = 1000000000;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n >> m >> x; g = vector>(n + 1, vector(n + 1, MAX)); for (int i = 0; i > a >> b >> t; g[a][b] = t; } for (int k = 1; k 처음에는 다익스트라로 하려고 했는데, 어차피 사람당 갔다 왔다 이렇게 2번 해야 해서 총 2*n번..

https://www.acmicpc.net/problem/16928 #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int move[111]; for (int i = 0; i > n >> m; for (int i = 0; i > a >> b; move[a] = b; } bool vst[111] = {}; vst[0] = true; queue> q; // q.emplace(1, 0); vst[1] = true; while (1) { int pos = q.front().fi..

https://www.acmicpc.net/problem/9019 #include #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t; cin >> t; while (t--) { int start, end; cin >> start >> end; vector vst(10000, false); queue> q; q.emplace(start, ""); vst[start] = true; while (!q.empty()) { in..

https://www.acmicpc.net/problem/12761 #include #include #include using namespace std;bool vst[1000001];int dir[] = {-1, 1, 0, 0, 0, 0};int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int a, b, n, m; cin >> a >> b >> n >> m; dir[2] = a; dir[3] = a * (-1); dir[4] = b; dir[5] = b * (-1); queue> q; q.emplace(n, 0); vst[n] = true; while (!q.e..

https://www.acmicpc.net/problem/2638 #include #include #include using namespace std;int dx[] = {1, -1, 0, 0};int dy[] = {0, 0, 1, -1};int n, m;vector> g;bool bfs() { vector> vst(n, vector(m, false)); vector> out(n, vector(m, false)); bool finish = true; queue> q; q.emplace(0, 0); vst[0][0] = true; while (!q.empty()) { int curi = q.front().first; int curj = q.fr..