Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 수학
- 스택
- 다이나믹 프로그래밍
- 그리디 알고리즘
- VR
- 우선순위 큐
- Team Fortress 2
- 브루트포스
- XR Interaction Toolkit
- 유니티
- 백트래킹
- ue5
- Unreal Engine 5
- 트리
- 유니온 파인드
- 재귀
- 문자열
- 그래프
- 알고리즘
- 누적 합
- DFS
- 다익스트라
- 구현
- 백준
- 시뮬레이션
- 정렬
- BFS
- 자료구조
- c++
- 투 포인터
Archives
- Today
- Total
목록나무 탈출 C++ (1)
1일1알

리프 노드에 있는 말을 한 칸씩 올려서 루트 노드에 말이 도착하면 말이 사라지고, 모든 말이 사라짐과 동시에 차례가 끝난 사람이 이기는 게임이다. 생각을 조금 해보면 자기 차례때 어느 말을 선택하든 결과는 달라지지 않고, 단지 먼저 누가 시작했는지에 따라 승패가 정해지는 홀짝 게임 같은 게임이다. 결국 루트 노드에서 리프 노드까지의 모든 높이의 합에 따라 승패가 결정된다. dfs를 통해서 루트 노드에서 모든 리프 노드까지의 합을 구하고, 그 합이 홀수라면 성원이의 승리고, 짝수라면 성원이의 패배이다. 리프 노드와 연결된 노드는 무조건 하나이기 때문에 노드와 연결된 노드가 1개이고, 그 노드가 1이 아닐 때 (1은 루트노드라고 문제에 적혀있음) 를 dfs의 종료 조건으로 설정하였다. #include #in..
알고리즘
2021. 12. 1. 16:51