Submission #133768

#TimeUsernameProblemLanguageResultExecution timeMemory
133768dorijanlendvajMeetings (IOI18_meetings)C++14
19 / 100
644 ms196812 KiB
#include "meetings.h" #include <bits/stdc++.h> #define x first #define y second #define pii pair<int,int> #define pb push_back #define ll long long #define vi vector<int> #define vl vector<ll> #pragma GCC optimize("unroll-loops") using namespace std; const int N=5010,MOD=1000000007; const char en='\n'; const ll LLINF=1ll<<60; ll an[N][N]; vl minimum_costs(vi H, vi L, vi R) { vi h=H,l=L,r=R; int n=h.size(),q=l.size(); assert(n*1ll*q<=1e8); for (int i=0;i<n;++i) { ll s=0,ma=0; for (int j=i;j<n;++j) { ma=max(ma,h[j]*1ll); s+=ma; an[i][j]=s; } s=0; ma=0; for (int j=i;j>=0;--j) { ma=max(ma,h[j]*1ll); s+=ma; an[i][j]=s; } } vl ans; for (int i=0;i<q;++i) { ll mi=LLINF; for (int j=l[i];j<=r[i];++j) mi=min(mi,an[j][l[i]]+an[j][r[i]]-h[j]); ans.pb(mi); } 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...