-
[알고리즘] 백준14501 퇴사문제 C++코딩/알고리즘 2020. 12. 24. 15:18
이런 입력이 주어질때는 input.txt 를 만들고 하는 편이다
수고로움도 덜어주고 시간도 절약되기 때문
#include <iostream> #include <algorithm> //max함수 사용 위해 using namespace std; struct Item { int t; int p; }; #define MAX_N 15 //N 최대값 int n; //입력받을 데이터 수 int dp[MAX_N+1]; Item item[MAX_N+1]; void sol(); int main(void) { //freopen("input.txt","r",stdin); cin >> n; //데이터 입력 for(int i=1; i<=n ;i++) { cin>> item[i].t >> item[i].p; // cout << item[i].t<< " , "<< item[i].p <<endl; dp[i]=item[i].p; } sol(); } void sol(){ int maxprofit=0; for(int i=2;i<=n;i++){ for(int j=1; j<i ; j++) { if(i-j >= item[j].t){ dp[i] = max( dp[i], dp[j]+item[i].p); } } } for (int i = 1; i <= n; i++) { if (i + item[i].t <= n + 1) { if (maxprofit < dp[i]) { maxprofit = dp[i]; } } } cout << maxprofit <<endl; }
시간이 너무 많이 걸렸다
많이 풀어봐야지
'코딩 > 알고리즘' 카테고리의 다른 글
[알고리즘] 백준 일곱 난쟁이 2309번 JAVA (1) 2021.01.06 [알고리즘] 백준 골드바흐의 추측 6588번 JAVA (2) 2021.01.05 [알고리즘] 백준 소수찾기 1978번 JAVA (1) 2021.01.05 [알고리즘] 백준 2839번 설탕배당 C++ (1) 2020.12.26 [알고리즘] 백준 11066 파일 합치기 (1) 2020.12.25