본문 바로가기

DP

(2)
[DP] 12906 새로운 하노이 탑 python 📄 12906 새로운 하노이 탑 📄 www.acmicpc.net/problem/12906 12906번: 새로운 하노이 탑 첫째 줄에 막대 A에 놓여져 있는 원판의 개수와 막대 A의 상태, 둘째 줄에 막대 B에 놓여져 있는 원판의 개수와 막대 B의 상태, 셋째 줄에 막대 C에 놓여져 있는 원판의 개수와 막대 C의 상태가 주 www.acmicpc.net 🤔 문제 풀이 🤔 pypy3로 채점을 하면 메모리 초과 발생! 이 문제의 핵심은 어떻게 방문 체크를 할것인지를 파악하는 것이다. 기본적인 BFS처럼 배열로 방문체크를 할 수가 없다. 각각의 기둥에 들어가있는 원판을 "/"으로 구분시켜 하나의 문자열로 만든다. 이 후 set()나 dict()를 이용해 문자열의 중복 방문 여부를 확인해주면 된다. ⌨️ 코드 ⌨️..
[DP] 백준 11058 크리보드 python 📄 백준 11058 크리보드 📄 www.acmicpc.net/problem/11058 11058번: 크리보드 N = 3인 경우에 A, A, A를 눌러 A 3개를 출력할 수 있다. N = 7인 경우에는 A, A, A, Ctrl-A, Ctrl-C, Ctrl-V, Ctrl-V를 눌러 9개를 출력할 수 있다. N = 11인 경우에는 A, A, A, Ctrl-A, Ctrl-C, Ctrl-V, Ctrl-V, Ctrl-A, Ctrl-C, Ctrl www.acmicpc.net 🤔 문제 풀이 🤔 버튼 1을 누르는 경우 dp[n] = dp[n - 1] + 1 버튼 2, 3을 누르는 경우는 크기가 증가하지 않으므로 최댓값이 될 수 없다. 버튼 4를 누르는 경우는 ctrl + A, ctrl + C인 2, 3번 버튼이 선행되어..

반응형