본문 바로가기
algorithm/ACMICPC

퇴사 - 14501

by 에어컨조아 2019. 12. 3.

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

 

14501번: 퇴사

첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다.

www.acmicpc.net

 

코드 : 

#include <iostream>

using namespace std;

int tnum[16] = { 0 };
int pnum[16] = { 0 };
int total = 0;


void solution(int day, int sum, int n)
{
	//탈출조건
	if(day == n +1)//if (day + tnum[day] - 1 > n)
	{
		if (total < sum)
		{
			total = sum;
		}
		return;
	}
	if (day > n + 1)
	{
		
		return;
	}

	solution(day + tnum[day], sum + pnum[day], n);
	solution(day + 1, sum, n);
}

int main()
{
	int n;
	cin >> n;

	for (int i = 1; i <= n; i++)
	{
		cin >> tnum[i] >> pnum[i];
	}

	//계산 편하게 하기위해 인덱스 1부터 시작
	//solution(1, n, 0);
	solution(1, 0, n);
	cout << total << endl;
	return 0;
}

'algorithm > ACMICPC' 카테고리의 다른 글

테트로미노 - 14500 (Solve 2)  (0) 2019.12.14
사다리 조작 - 15684  (0) 2019.12.08
부분수열의 합 - 1182  (0) 2019.12.03
암호 만들기 -1759  (0) 2019.12.03
연산자 끼워넣기 (2) - 15658  (0) 2019.12.03

댓글