Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

대웅짱님의 블로그

[14501] 퇴사 본문

알고리즘/BOJ

[14501] 퇴사

대웅짱 2019. 2. 13. 20:38

문제: https://www.acmicpc.net/problem/14501



이번 문제는 퇴사이다.


앞으로 퇴사할 날이 주어지고


퇴사 전까지의 일과 비용이 주어졌을 때


최대한 뽕 뽑고 퇴사할 경우 얼마를 벌 수 있냐고 묻는 문제이다.


딱 봐도 DP문제인 것 같아서 DP로 풀었다.


그 날 일을 선택하느냐 그냥 넘어가느냐 두 가지로 나누어 주고 최대 값을 구해주면 된다.


끝.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
int dp[20], n;
pair<intint> arr[20];
int func(int num){
    if(num > n) return -987654321;
    int &ret = dp[num];
    if(ret != -1return ret;
    ret = 0;
    return ret = max(func(num+1), func(num+arr[num].first)+arr[num].second);
}
int main(){
    scanf("%d"&n);
    for(int i=0; i<n; i++){
        int t, p;
        scanf("%d %d"&t, &p);
        arr[i] = {t, p};
    }
    memset(dp, -1sizeof(dp));
    printf("%d\n", func(0));
 
    return 0;
}
cs


'알고리즘 > BOJ' 카테고리의 다른 글

[14503] 로봇 청소기  (0) 2019.02.16
[14502] 연구소  (0) 2019.02.14
[14500] 테트로미노  (0) 2019.02.12
[14499] 주사위 굴리기  (0) 2019.02.09
[13458] 시험 감독  (0) 2019.02.09