코딩테스트 (1) 썸네일형 리스트형 3234. 준환이의 양팔저울[python] dfs를 이용해서 이진탐색을 구현했더라도 시간초과 때문에 특정 조건을 마주치면 return을 해줘야 한다. ✔ 고려해준 사항 1. dfs를 이용한 이진탐색 visited 리스트를 이용해서 이미 올려놓은 추는 다시 올려 놓지 않게 만들었다. 2. '왼쪽에 올려놓은 추의 합 * 2'가 '전체 추의 합' 보다 크다면 그 이후 탐색은 할 필요없이 2^k * k!(단, k는 남은 추의 개수)을 결과값에 더해주면 된다. 3. 반대로 오른쪽에 올려놓은 추의 합*2 가 전체 추의 합보다 크다면 그 이후 탐색은 할 필요없다. 4. 조건대로 왼쪽에 올려놓은 추의 합보다 오른 쪽에 올려놓은 추의 합이 커지면 그 이후 탐색은 할 필요없다. 5. 2의 n제곱, n 팩토리얼 값을 미리 계산해서 사용한다. 1~4번까지 적용해도 2.. 이전 1 다음