-
5014번 스타트링크 | BFS | 백준 5014 C++ 코드[백준 알고리즘]/[C++] 2021. 3. 3. 11:18728x90반응형
이번 포스팅은 백준 5014번 스타트링크입니다.
아래 url를 클릭하시면 백준 사이트에서 문제를 볼 수 있습니다.
기본 알고리즘
최단 거리 = BFS (너비 우선 탐색)
전체 코드
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152//백준5014 스타트링크#include <iostream>#include <queue>#include <vector>using namespace std;int F, S, G, U, D;const int MAX = 1000001;int path[MAX];bool visited[MAX];vector<int> dx;queue<int> q;void BFS(int v) {visited[v] = true;q.push(v);while (!q.empty()) {v = q.front();q.pop();for (int i = 0; i < 2; i++) {int nv = v + dx[i];if (0 < nv && nv <= F) {if (!visited[nv]) {visited[nv] = true;q.push(nv);path[nv] = path[v] + 1;}}}}}int main() {cin >> F >> S >> G >> U >> D;dx.push_back(U);dx.push_back(D * -1);BFS(S);if (visited[G]) {cout << path[G];}else {cout << "use the stairs";}}cs 728x90반응형'[백준 알고리즘] > [C++]' 카테고리의 다른 글
백준 2583 영역 구하기 | BFS | C++ (0) 2021.03.11 1987번 알파벳 | DFS | 백준 5014 C++ 코드 (0) 2021.03.09 2589번 보물섬 | BFS | 백준 2589 C++ 코드 (1) 2021.03.03 2468번 안전영역 | BFS, DFS | 백준 2468 C++ 코드 (0) 2021.03.02 13565번 침투 | BFS, DFS | 백준 13565 C++ 코드 (0) 2021.02.28