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 | 31 |
Tags
- BST
- graph
- Sieve_of_Eratosthenes
- disjoint-set
- dynamic programming
- Eulerian circuit
- mathematics
- Greedy
- POJ
- bitmask
- BOJ
- GCD
- DynamicProgramming
- implementation
- Algospot
- CS Academy
- backtracking
- Shortest path
- hashing
- Segment Tree
- Euler circuit
- Cycle detecting
- flows
- graph modeling
- Eulerian path
- BFSDFS
- Euler path
- Dag
- 백준
- scc
Archives
- Today
- Total
그냥 하는 노트와 메모장
BOJ 1176 섞기 본문
* BOJ 1176 섞기
[분류 - 다이나믹 프로그래밍]
[요약] 인접한 사람들의 키 차이가 K초과가 되도록 N명을 배치하는 방법의 수를 구하자
[풀이]
1. 이미 i명이 조건에 맞게 서있다고 가정해보자. 이 상태에서 한명을 뒤에 추가하려고 한다. 이때 i명은 조건에 충족하게 이미 서있기 때문에, i명 배치에서 가장 뒤에 있는 사람과 추가할 사람의 관계를 따져 K초과가 될 수 있는지 확인하면 된다.
2. 먼저 몇명이 이미 서 있을 때, 맨 뒤에 설 사람을 정한다.
3. 다음으로 그 뒤에 누굴 세울지를 정해서 조건에 맞다면 경우의 수를 셈해주면 간단하게 해결할 수 있다.
'Solved problems' 카테고리의 다른 글
BOJ 1742 레이싱 결과 (0) | 2020.05.25 |
---|---|
BOJ 1040 정수 (0) | 2020.05.24 |
BOJ 1797 균형잡힌 줄서기 (0) | 2020.05.22 |
BOJ 3032 승리 (0) | 2020.05.21 |
BOJ 12103 짝합 수열, 7976 수열 (0) | 2020.05.21 |
Comments