99클럽 코테 스터디 32일차 TIL: 부분 수열 DP 심화

2024. 11. 28. 14:15·일기장/항해99클럽 4기

오늘의 문제 | 11054. 가장 긴 바이토닉 부분 수열

부분수열 시리즈 중에 가장 어려워보여서 도전하지 않았던 문제이다. 다만 조금 생각해보니, 기존에 가장 긴 증가하는/가장 긴 감소하는 부분 수열을 합친 문제라 생각하니 문제가 편해졌다.

아이디어: 각 지점이 중심이라 생각하자.

n=int(input())
l=[*map(int,input().split())]

# 각 지점이 꼭대기일 때를 기준으로 최댓값이 몇인지를 파악하는 걸 목표로 함.

# 해당 지점까지 가장 긴 증가/감소 부분 수열을 둘 다 구하면 가능할 수도.

dp_increase=[1]*(n)
dp_decrease=[1]*(n)
dp_bitonic=[]

for i in range(n):
    for j in range(i):
        if l[j]<l[i]:
            dp_increase[i]=max(dp_increase[i],dp_increase[j]+1)
l=l[::-1]

for i in range(n):
    for j in range(i):
        if l[j]<l[i]:
            dp_decrease[i]=max(dp_decrease[i],dp_decrease[j]+1)
dp_decrease=dp_decrease[::-1]

for i in range(n):
    dp_bitonic.append(dp_increase[i]+dp_decrease[i]-1)
print(max(dp_bitonic))

오늘의 회고

부분 수열을 하다보니 이제 어느정도 이해가 되었다. 확실히 DP 테이블에 어떤 값을 저장하냐를 기준으로 생각하면 되는 듯하다. 다만 테이블을 조금 많이 썼는데 이게 정해인지는 궁금하다.

'일기장 > 항해99클럽 4기' 카테고리의 다른 글

99클럽 코테 스터디 34일차 TIL: 단순 문자열 파싱  (0) 2024.12.01
99클럽 코테 스터디 33일차 TIL: 문자열 처리 구현  (1) 2024.11.29
99클럽 코테 스터디 31일차 TIL: 부분 수열 DP 심화  (1) 2024.11.27
99클럽 코테 스터디 30일차 TIL: 부분 수열 DP  (0) 2024.11.26
99클럽 코테 스터디 29일차 TIL: 피보나치 DP  (0) 2024.11.26
'일기장/항해99클럽 4기' 카테고리의 다른 글
  • 99클럽 코테 스터디 34일차 TIL: 단순 문자열 파싱
  • 99클럽 코테 스터디 33일차 TIL: 문자열 처리 구현
  • 99클럽 코테 스터디 31일차 TIL: 부분 수열 DP 심화
  • 99클럽 코테 스터디 30일차 TIL: 부분 수열 DP
미역굳
미역굳
.
  • 미역굳
    BE THE DEVELOPER
    미역굳
  • 전체
    오늘
    어제
    • TOTAL (60)
      • 안내 데스크 (1)
      • Google 공간 (3)
        • 프로젝트 트랙 1기 (3)
      • 자유공간 (9)
        • 임시학습실 (2)
        • 중앙 회의실 (5)
        • 알고리즘 연구실 (2)
      • 일기장 (47)
        • 우아한테크코스 7기 (12)
        • 항해99클럽 4기 (35)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    백준 문제 출제
    티스토리챌린지
    fixed
    백준
    코드잇 Python 풀스택 개발자
    timeval
    우아한테크코스
    길벗
    수행 시간
    solved.ac
    소수점 출력
    백준 1000문제
    cout.precision
    우테코
    99클럽
    코드잇 JavaScript 프론트엔드 개발자
    7기
    파이썬
    코딩테스트준비
    개발자취업
    코드잇 강의
    백준 스트릭
    오블완
    Til
    스트릭
    항해99
    개발자
    프리코스
    코드잇
    리뷰어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
미역굳
99클럽 코테 스터디 32일차 TIL: 부분 수열 DP 심화
상단으로

티스토리툴바