가장 긴 바이토닉 수열 (1) 썸네일형 리스트형 백준 11054 가장 긴 바이토닉 부분 수열 - 파이썬 문제 풀이. 저번에 포스트 했던 LIS를 구하는 알고리즘을 응용한 문제이다. 앞에서 부터 구한 LIS와 뒤에서 부터 구한 LIS를 더해서 최댓값을 출력하면 된다. 단 두개를 더하고 숫자 하나는 겹치기 때문에 -1을 해줘야한다. 소스코드. import sys A = int(sys.stdin.readline()) seq = list(map(int, sys.stdin.readline().split())) dp1 = [0] * A dp2 = [0] * A result = [0] * A for i in range(A): for j in range(i): if seq[i] > seq[j] and dp1[i] < dp1[j]: dp1[i] = dp1[j] dp1[i] += 1 result[i] += dp1[i] fo.. 이전 1 다음