[백준 - Java] 10836번 : 여왕벌
문제 www.acmicpc.net/problem/10836 설명 매일매일 애벌레를 키우면 무조건 시간 초과가 난다!! 1,000,000 최대 백만일까지 애벌레를 키울 수 있기 때문!! 잘 생각해보면 매일 애벌레를 키워할 필요가 없다! 제일 왼쪽 열과 제일 위쪽 행의 애벌레만 주어지는 N날 동안 주어지는 0, 1, 2로 키우고, 나머지 (1, 1) ~ (M, M) 애벌레들은 N날이 지난 후, 문제의 조건 2에 따라 자신의 왼쪽(L), 왼쪽 위(D), 위쪽(U)의 애벌레들 중 가장 큰 사이즈로 키워진 애벌레의 크기로 바꿔주면 됨! 매일매일 키워보는 거나 제일 왼쪽 위쪽 다 키우고 적용하는 거나 둘은 같다! 그러니 다 키우고 적용하는게 훨 시간을 줄일 수 있다. * Scanner써서 입력받거나 println으..
2021. 3. 3.
[백준 - Java] 11057번 : 오르막 수
문제 www.acmicpc.net/problem/11057 11057번: 오르막 수 오르막 수는 수의 자리가 오름차순을 이루는 수를 말한다. 이때, 인접한 수가 같아도 오름차순으로 친다. 예를 들어, 2234와 3678, 11119는 오르막 수이지만, 2232, 3676, 91111은 오르막 수가 아니다. 수 www.acmicpc.net 설명 DP 동적 계획법을 사용해 해결하는 문제이다. 표를 그려보면 dp를 적용할 규칙이 쉽게 떠오른다. 먼저 각 자릿수에는 0~9까지의 10개의 숫자가 들어갈 수 있다. N=1 한자릿수일 경우 0~9까지 각 숫자들을 한 번씩 이용해 총 10가지의 오르막수를 만들 수 있다. N=2 두자릿수일 경우 00, 01, 02 ... 09 -> 10 가지 11, 12, 13 ... ..
2021. 2. 22.