일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 구현
- 정렬
- 재귀
- c++
- 백준
- 다익스트라
- 자료구조
- DFS
- ue5
- VR
- 백트래킹
- 그리디 알고리즘
- BFS
- 문자열
- Unreal Engine 5
- 다이나믹 프로그래밍
- 투 포인터
- Team Fortress 2
- 우선순위 큐
- 그래프
- 시뮬레이션
- 유니티
- 트리
- 유니온 파인드
- 누적 합
- 브루트포스
- 알고리즘
- 수학
- XR Interaction Toolkit
- 스택
- Today
- Total
목록다익스트라 (14)
1일1알

다익스트라를 이용해서 해결할 수 있는 문제이다. 인접 행렬로 풀때는 같은 경로인데 다른 비용의 입력이 있을 수 있기 때문에 주의해야 한다. #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using int64 = long long; int n, m; vector graph; struct VertexCost { int64 vertex; int64 cost; bool operator(const VertexCost& other) const { return cost >..

D까지 가는 최소 거리를 구하는 문제이다. 역주행은 불가능하다. dp방식으로 해결하였다. 처음에는 거리를 지름길을 고려하지 않고 초기화해주고 지름길들의 도착 위치를 기준으로 정렬한 뒤, 도착 전의 위치들을 검사하면서 도착 위치까지의 최소 거리를 찾아서 지름길을 이용한 최소 거리들을 구하고, 마지막에는 처음부터 D까지 검사하면서 최소 거리를 찾는 방식으로 문제를 해결하였다. 풀고 나서 시작 위치를 기준으로 정렬해도 맞았는데, 이유는 잘 모르겠다. #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef l..