Submission #1201354

#TimeUsernameProblemLanguageResultExecution timeMemory
1201354PagodePaivaClosing Time (IOI23_closing)C++20
0 / 100
31 ms5188 KiB
#include "closing.h" #include<bits/stdc++.h> using namespace std; const long long N = 3010; vector <pair <long long, long long>> g[N]; long long v[N]; long long custo[N]; long long pref[N], pref2[N]; int max_score(int n, int X, int Y, long long k, std::vector<int> U, std::vector<int> V, std::vector<int> W){ for(int i = 0;i < n;i++){ g[i].clear(); v[i] = 0; custo[i] = 0; pref[i] = pref2[i] = 0; } for(int i = 0;i < n-1;i++){ g[U[i]].push_back({V[i], W[i]}); g[V[i]].push_back({U[i], W[i]}); v[i] = W[i]; } for(int i = X-1;i >= 0;i--){ pref[i] = pref[i+1] + v[i]; } for(int i = X+1;i < n;i++){ pref[i] = pref[i-1] + v[i-1]; } for(int i = Y-1;i >= 0;i--){ pref2[i] = pref2[i+1] + v[i]; } for(int i = Y+1;i < n;i++){ pref2[i] = pref2[i-1] + v[i-1]; } int ans = 0; for(int l1 = 0;l1 <= X;l1++){ for(int r1 = X;r1 < n;r1++){ long long gasto = 0; for(int j = l1;j <= r1;j++){ gasto += pref[j]; } for(int i = 0;i < l1-1;i++) custo[i] = pref2[i]; for(int i = l1;i <= r1;i++){ custo[i] = max(pref[i], pref2[i]) - pref[i]; } for(int i = r1+1;i < n;i++){ custo[i] = pref2[i]; } for(int l2 = 0;l2 <= Y;l2++){ for(int r2 = Y;r2 < n;r2++){ long long gasto2 = gasto; for(int i = l2;i <= r2;i++){ gasto2 += custo[i]; } if(gasto2 <= k){ ans = max(ans, r1-l1+1+r2-l2+1); } } } } } return 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...