[백준] 11053번 가장 긴 증가하는 부분 수열 (LIS문제)
사용 언어 - Python3 문제 - 11053번 가장 긴 증가하는 부분 수열 LIS/LCS 문제 : 가장 긴 증가하는 부분 수열 LIS (Longest Incresing Subsequence) LCS (Longest Common Subsequence) https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 정답 해당 위치 기준 나보다 작은 숫자가 있으면 추가해주기 dp[i..
2023. 11. 1.
[백준] 14501번 퇴사
사용 언어 - Python3 문제 - 14501번 퇴사 https://www.acmicpc.net/problem/14501 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net 정답 1. 완전 탐색적 재귀함수 def recur(day, total) recur(상담받는 날짜, 수익합) day = 0일부터 n-1일까지 반복 day가 n-1보다 크고, n보다 크면 무시 아니라면, total,answer 중 더 큰 수익값으로 업데이트 - 상담 하는 경우, 날짜+날짜만큼 더하기, 수익+수익만큼 더하기 - 상담 안하는 경우, 날짜+1, 수익 그대로 print(answer) def recur(day,total): global answer if day > n-1: #..
2023. 10. 30.
[백준] 19942번 다이어트
사용 언어 - Python3 문제 - 19942번 다이어트 https://www.acmicpc.net/problem/19942 19942번: 다이어트 식재료 N개 중에서 몇 개를 선택해서 이들의 영양분(단백질, 탄수화물, 지방, 비타민)이 일정 이상이 되어야 한다. 아래 표에 제시된 6가지의 식재료 중에서 몇 개를 선택해서 이들의 영양분의 각 www.acmicpc.net 정답 재귀함수 문제 def recur(idx, p, f, s, v, price) recur(인덱스수, 단백질, 지방, 탄수화물, 비타민, 사용한 비용합) 최소 영양성분 만족 + 현재의 answer보다 더 작은 price인 경우가 있다면, answer를 최소값으로 업데이트해주고, 그때의 used를 answer_used에 저장해준다. 모든 ..
2023. 10. 30.
[백준] 2961번 도영이가 만든 맛있는 음식
사용 언어 - Python3 문제 - 2961번 도영이가 만든 맛있는 음식 2961번: 도영이가 만든 맛있는 음식 첫째 줄에 재료의 개수 N(1 ≤ N ≤ 10)이 주어진다. 다음 N개 줄에는 그 재료의 신맛과 쓴맛이 공백으로 구분되어 주어진다. 모든 재료를 사용해서 요리를 만들었을 때, 그 요리의 신맛과 쓴맛은 www.acmicpc.net 정답 재귀함수로 푼 풀이 def recur(idx, sin, sun, use) recur(인덱스수, 신맛, 쓴맛, 사용한 재료수) 인덱스 한개씩 늘려가면서 반복해주기 신맛은 1, 쓴맛은 0으로 초기값 설정 recur(0,1,0,0) - 해당 재료 사용 했다면, 신맛은 곱하기 쓴맛은 더하기 재료수는 +1 로 업데이트 - 해당 재료 사용 안했다면, 단맛, 신맛, 재료수 ..
2023. 10. 30.