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

2024. 11. 27. 16:08·일기장/항해99클럽 4기

오늘의 문제 | 2631. 줄세우기

오늘 문제는 오랜만에 골드가 나왔다. 순서대로 배치하기 위해서 드는 최소 비용을 구하라고 했다. 약간은 그리디적이긴 한데, 아이디어가 이전에 풀었던 알고리즘과 비슷하다는 생각이 든다.

아이디어: 가장 긴 증가하는 부분 수열

우선 우리가 옮기지 않아도 되는 친구들의 수를 최대화시키는 방법을 떠올릴 수 있다. 오름차순으로 정렬하기 위해서, 증가하는 수열을 제외한 나머지만 옮기는건 무조건 이득이라는 것을 알 수 있다. 다만 이게 무조건적으로 최소값인지는 약간은 의문이 들기는 한다.

n=int(input())
l=[int(input()) for i in range(n)]

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

하지만 이렇게 제출했을 때 31%에서 틀렸다고 한다. 뭔가 예외 케이스가 존재하는구나 싶어서 예외를 찾아나서기 시작했다.

n=int(input())
l=[int(input()) for i in range(n)]

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

사실 예외는 없었고… 마지막 원소를 검사하지 않아서 생긴 문제였다. 다만 n-1까지 루프를 돌렸을 때도 충분히 답을 맞았던거 같은데 이게 왜 차이가 생기는지 의문이다.

알고보니 예전에도 n까지 반복했었다… 약간 생각을 잘못한 듯하다.

오늘의 회고

골드4 치고는 예전 다른 문제들과 결이 비슷해서 당황했다. 물론 이 문제를 처음 보고 이런 아이디어를 떠올린다는게 쉽지는 않을 거라고 생각하지만 연속으로 계속 비슷한 코드가 나온다는게 아쉽긴 하다.

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

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

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

  • 공지사항

  • 인기 글

  • 태그

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

  • 최근 글

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

티스토리툴바