Submission #1174919

#TimeUsernameProblemLanguageResultExecution timeMemory
1174919Dan4LifeCloud Computing (CEOI18_clo)C++20
100 / 100
486 ms1480 KiB
#include <bits/stdc++.h>
using namespace std;
#define pb push_back
#define all(a) begin(a),end(a)
using ll = long long;
using ar4 = array<ll,4>;
const int mxM = 100001;
ll dp[mxM];
vector<ar4> a;

int main(){
	ios_base::sync_with_stdio(false); cin.tie(0);
	for(int t:{-1,1}){
		int n,c,f,v; cin >> n;
		while(n--) cin>>c>>f>>v, a.pb({-f,t,c*t,v*t});
	}
	sort(all(a)); fill(dp+1,dp+mxM,-2e18);
	for(auto [f,t,c,v] : a)
		for(int j = t==1?0:mxM-1; t==1?j+c<mxM:j>=-c; j+=t)
			dp[j] = max(dp[j], dp[j+c]+v);
	cout << *max_element(dp,dp+mxM) << "\n";
}
#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...