제출 #1273095

#제출 시각아이디문제언어결과실행 시간메모리
1273095algoproclubCloud Computing (CEOI18_clo)C++20
0 / 100
123 ms1896 KiB
// UUID: ca0e475b-c8d7-40e9-93e9-5077826c17f4
#include <bits/stdc++.h>
using namespace std;

int main() {
#define int long long
	int n;
	cin >> n;
	vector<int> dppc(50*n+1000, INT_MAX);
	dppc[0]=0;
	for(int i=0;i<n;i++){
		int c, _, v;
		cin >> c >> _ >> v;
		for(int j=50*i;0<=j;j--){
			dppc[j+c]=min(dppc[j+c], dppc[j]+v);
		}
	}
	int m;
	cin >> m;
	vector<int> dporder(50*m+1000, INT_MIN);
	dporder[0]=0;
	for(int i=0;i<m;i++){
		int c, _, v;
		cin >> c >> _ >> v;
		for(int j=50*i;0<=j;j--){
			dporder[j+c]=max(dporder[j+c], dporder[j]+v);
		}
	}
	for(int i=1;i<50*m+1000;i++) dporder[i]=max(dporder[i-1], dporder[i]);
	int ans=0;
	for(int i=0;i<50*min(n, m)+1000;i++){
		ans=max(ans, dporder[i]-dppc[i]);
	}
	cout << ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...