Submission #1273803

#TimeUsernameProblemLanguageResultExecution timeMemory
1273803mahersefoCloud Computing (CEOI18_clo)C++20
0 / 100
1 ms576 KiB
#include<bits/stdc++.h> #define ll long long #define all(a) (a).begin() , (a).end() #define endl '\n' using namespace std; void readFromFile(string input = "input.txt",string output="output.txt") { #ifndef ONLINE_JUDGE freopen(input.c_str(),"r",stdin); freopen(output.c_str(),"w",stdout); #endif } const int N = 2e3+1; #define ty array<int,4> ty a[2*N]; int n,m,t; ll memo[2*N][50]; bool vis[2*N][50]; ll dp(int i,int core) { // cout << i << ' ' << core << ' ' << a[i][3] << endl; if(i == t) { return core ? -1e18 : 0; } ll &ret = memo[i][core]; if(vis[i][core]) { return ret; } vis[i][core] = 1; ret = dp(i+1 , core); if(a[i][3] && core) { ret = max(ret , dp(i+1 , max(0 , core-a[i][0])) - a[i][2]); } if(!a[i][3]) { ret = max(ret , dp(i+1 , core + a[i][0]) + a[i][2]); } return ret; } void solve() { cin >> n; for(int i = 0 ; i < n ; i++) { cin >> a[i][0] >> a[i][1] >> a[i][2]; a[i][3] = 1; } cin >> m; for(int i = n ; i < m+n ; i++) { cin >> a[i][0] >> a[i][1] >> a[i][2]; a[i][3] = 0; } t = n+m; sort(a,a+t,[&](ty x,ty y) { if(x[1] != y[1]) return x[1] < y[1]; return x[3] < y[3]; }); // for(int i = 0 ; i < t ; i++) { // cout << a[i][0] << ' ' << a[i][1] << ' ' << a[i][2] << ' ' << a[i][3] << endl; // } cout << dp(0,0) << endl; } int32_t main() { readFromFile(); ios::sync_with_stdio(0); cin.tie(0);cout.tie(0); int t = 1; // cin >> t; for(int i = 0 ; i < t ; i++) { solve(); } }

Compilation message (stderr)

clo.cpp: In function 'void readFromFile(std::string, std::string)':
clo.cpp:8:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    8 |         freopen(input.c_str(),"r",stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
clo.cpp:9:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    9 |         freopen(output.c_str(),"w",stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...