#include <stdio.h>
#include <iostream>
using namespace std;
 
int choice[20];
int time[20];
int money[20];
int N;
int Max;
 
void combination(int moneySum, int timeSum)
{
    if(timeSum > N+1)
    {
        return;
    }
    
    if(moneySum > Max)
    {
        Max = moneySum;
    }
    
    for(int i = timeSum; i <= N; i++)
    {
        if(i + time[i] <= N+1)
        {
            combination(moneySum + money[i], i + time[i]);
        }
    }    
}
 
int main(void)
{
//    freopen("B14501_input.txt", "r", stdin);
    
    scanf("%d"&N);
    
    for(int i = 1; i <= N; i++)
    {
        scanf("%d %d"&time[i], &money[i]);
    }
    
    combination(01);
 
    cout << Max;
    
    return 0;
}
cs

+ Recent posts