어느정도 풀다가 막혀서 이 해설을 보시는 분은, 풀이 힌트를 한번 보고 다시 혼자서 풀어보세요 1. 풀이 힌트 - 따로 노트에 2부터 12까지 세로로 숫자를 나열 한뒤, 각 숫자가 1이 되는 최소값을 비교해보라 그러면 규칙이 보일 것이다. 그래도 안보인다면 케이스를 16까지 늘려보라. 2. 풀이 과정 - 2부터 12까지 각 숫자를 1로 만드는 최소 연산횟수를 적어보면, 밑과 같이 나온다. 2(1), 3(1), 4(2), 5(3), 6(2), 7(3), 8(3), 9(2), 10(3), 11(4), 12(2) // 괄호 안은 각 숫자를 1로 만드는 연산의 최소횟수 1) 위의 결과를 기본으로 규칙을 찾기 위해 기본적으로 정수 N이 1씩 증가할 때 마다. 연산 횟수의 값도 1씩 증가한다고 가정한다. ex) 3..
어느정도 풀다가 막혀서 이 해설을 보시는 분은, 풀이 힌트를 한번 보고 다시 혼자서 풀어보세요 1. 풀이 힌트 - 꼭대기의 마지막 계단 부터 가정하여, 어떤 방식으로 플레이어가 꼭대기에 도착해야 최대 스코어를 받을 수 있을 지 고민하기. 2. 풀이 과정 - 계단이 2개 이하일 때 최댓값은 각 계단을 더한 값이 된다. - 계단이 3개 이상일 때 부터는 꼭대기(i)에 최대값을 유지하면서 올라갈 수 있는 방법은 2가지가 된다. 1) 꼭대기(i)의 직전 계단(i - 1)을 밟은 경우 - 플레이어가 꼭대기의 직전 계단을 밟고 올라온 경우 꼭대기까지 왔을 떄 플레이어의 최대 값은 - "꼭대기(i) + 꼭대기 직전(i - 1) + 꼭대기 직전 -2 계단(i - 3)까지의 최댓값"이 된다. - 한번에 연속된 3개의 계..
1. 풀이 과정 - 각 층의 숫자마다 윗 층부터 조건에 맞게 내려온 숫자들의 최대합을 구하여 저장한뒤 각 합 중에서 최대 값을 판별한다. * 풀이 과정 예시 1) 각 층의 양 끝 숫자의 합은 윗 층 부터 대각선으로 한 방향으로 내려온 숫자들의 합이 최대 합이된다. 2) 각 층의 양 끝값 사이의 수들은 윗 층으로 부터 내려온 숫자중에서 현재 층의 숫자의 앞으로 한칸 뒤로 한칸 값의 합이 된다. 3) 또한 양 끝값 사이의 수가 둘 이상일 경우 다음 층으로 내려가기 전에 각 숫자들의 합중에 최대 값을 구한 뒤 다음 층을 계산한다. 4) 위와 같이 각 층의 숫자들의 최대합을 구하면서 마지막 층으로 내려가면 최종적으로 왼쪽 끝값, 오른쪽 끝값, 가운데 값이 남게 된다. 5) 마지막으로 남은 세 값의 최대값이 정답..
- 20200428
- 20200319
- 20200424
- 20200622
- chapter8
- 20200804
- 20200510
- 20200425
- 20200421
- 20200403
- 20201204
- 20200317
- 20200415
- 20200503
- 20200423
- 20200406
- 20200504
- 생활코딩리눅스
- chapter7
- 백준
- 20200429
- 20200417
- 20200512
- 20200330
- 20200420
- 20200502
- 20200624
- 20200427
- likelion
- 20200413
- Total
- Today
- Yesterday