Submission #535396

#TimeUsernameProblemLanguageResultExecution timeMemory
535396amunduzbaevSemiexpress (JOI17_semiexpress)C++17
100 / 100
67 ms33316 KiB
#include "bits/stdc++.h" using namespace std; #define ar array #define int long long const int N = 3005; int p[N]; signed main(){ ios::sync_with_stdio(0); cin.tie(0); int n, m, k; cin>>n>>m>>k; int a, b, c; cin>>a>>b>>c; int T; cin>>T; for(int i=0;i<m;i++) cin>>p[i]; vector<int> cc; int res = -1; for(int i=0;i+1<m;i++){ int t = (p[i] - 1) * b; if(t > T) continue; int P = min(p[i+1], p[i] + (T - t) / a + 1); //~ cout<<p[i]<<" "<<P - 1<<" must\n"; res += (P - p[i]); for(int j=0;j<k && P < p[i+1];j++){ int t_ = t + (P - p[i]) * c; if(t_ > T) break; int P_ = min(p[i+1], P + (T - t_) / a + 1); //~ cout<<P<<" "<<P_ - 1<<"\n"; cc.push_back(P_ - P); P = P_; } } if((n - 1) * b <= T) res++; sort(cc.rbegin(), cc.rend()); for(int j=0;j<min((int)cc.size(), k - m);j++) res += cc[j]; cout<<res<<"\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...