[백준 C++] 14501 : 퇴사
CSE/코딩 문제풀이2024. 2. 6. 17:24[백준 C++] 14501 : 퇴사

https://www.acmicpc.net/problem/14501 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net 다이나믹 프로그래밍 (DP)와 브루트포스 알고리즘을 활용한 문제이다. 주어진 기간 안에 최대한의 이득을 확인하는 문제이기 때문에 점화식으로 계산하여, DP리스트에 그 날에 할 수 있는 최댓값을 넣어주면서 진행하면 된다. N날이 되었을 때 DP[N]에 있는 값이 그 기간 안에 할 수 있는 최대의 가치를 가진 일이 될 것이다. #include using namespace std; int N; int list[15][2]; int dp[15]; int main() { ios::sync_with_stdio(0); cin.tie(0); cou..

[백준 C++] 11047 : 동전 0
CSE/코딩 문제풀이2024. 1. 22. 19:32[백준 C++] 11047 : 동전 0

https://www.acmicpc.net/problem/11047 그리디 알고리즘을 사용한 실버4 문제이다. 동전의 가치를 오름차순으로 입력한 뒤, 가장 최소한의 동전을 사용하여 K의 합을 만들면 문제이다. 처음에 어떻게 해야할지 막막할 수 있지만, 생각해보면 간단한 문제이다. K값보다 작거나 같은 가치의 동전을 먼저 사용하고, 나머지는 먼저 사용한 동전보다 낮은 가치의 동전을 사용해서 다시 메꿔주는 작업을 반복하면 된다. #include int main() { int N, K; int array[10]; int answer = 0; std::cin >> N >> K; for (int i = 0; i > array[i]; } for (int i = N - 1; i..

image