코딩테스트/백준

백준 11058번 크리보드 파이썬 풀이/코드 (다이나믹 프로그래밍)

RyanKwon 2021. 10. 20. 18:00
728x90

코드만 궁금한 분은 깃허브링크 눌러주세요!

 

GitHub - Rhyankwon/algorithms

Contribute to Rhyankwon/algorithms development by creating an account on GitHub.

github.com

문제 설명

 

문제 해결 논리

 

우선 출력-선택-복사-붙여넣기 이 과정만 해도 4번은 눌러야하고 극초반에는 그렇게 해봣자 효율이 안 좋기때문에 5까지는 그냥 A를 출력하는게 최대값이다.

 

이 이후에는 각 값에서의 최댓값을 계산할때마다 맨 앞부터, 현재 버튼 누르는 횟수 - 3 째 까지 모두 훑으며 이전의 갯수-전체선택-복사-(남은 횟수는 모두)붙여넣기를 하면서 그중 가장 큰 값을 현재의 최댓값으로 하면 된다. -3째까지만 훑는 이유는 그렇게 해야 최소 한번은 선택 복사 붙여넣기를 할 수 있기때문이다.



음 근데 사실 생각해보면 특수한 논리랄게.. 없는 논리가 다이나믹프로그래밍아닐까 하는 느낌이다.ㅋㅋㅋ 그냥.. 점화식을 세워서 무작정 해보는 수밖에 없는 느낌.

 

728x90