34_병사 배치하기 18353번: 병사 배치하기 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 2,000) 둘째 줄에 각 병사의 전투력이 공백을 기준으로 구분되어 차례대로 주어진다. 각 병사의 전투력은 10,000,000보다 작거나 같은 자연 happenundo.tistory.com
병사배치하기
18353번: 병사 배치하기 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 2,000) 둘째 줄에 각 병사의 전투력이 공백을 기준으로 구분되어 차례대로 주어진다. 각 병사의 전투력은 10,000,000보다 작거나 같은 자연수이다. www.acmicpc.net DP 문제다. 점화식을 생각해내지 못해서 풀지 못했다. 풀이 코드 # 18353번: 병사 배치하기 n = int(input()) # 병사의 수 arr = list(map(int, input().split())) # 전투력 arr.reverse() dp = [1] * n # dp 테이블 # 가장 긴 증가하는 부분 수열(LIS) 알고리즘 수행 for i in range(1, len(arr)): for j in range(i): if arr[i] > arr[..