제출 #1026222

#제출 시각아이디문제언어결과실행 시간메모리
1026222Malix모임들 (IOI18_meetings)C++14
19 / 100
2364 ms786432 KiB
#include "meetings.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef vector<int> vi; typedef vector<vi> vii; typedef pair<int,int> pi; typedef vector<pi> pii; typedef tuple<int,int,int> tii; typedef vector<ll> li; typedef vector<li> lii; #define REP(i,a,b) for(int i=a;i<b;i++) #define F first #define S second #define PB push_back #define MP make_pair #define LSOne(s) ((s)&(-s)) ll INF=1e18+10; int inf=1e9+10; ll M=1e9+7; std::vector<long long> minimum_costs(std::vector<int> H, std::vector<int> L, std::vector<int> R) { int n=H.size(); int q=L.size(); li ans(q,INF); lii a(n,li(n,0)); REP(i,0,n){ int k=H[i]; REP(j,i,n){ k=max(k,H[j]); a[i][j]=k; } k=H[i]; for(int j=i;j>=0;j--){ k=max(k,H[j]); a[i][j]=k; } } REP(i,0,n){ REP(j,i+1,n)a[i][j]+=a[i][j-1]; for(int j=i-1;j>=0;j--)a[i][j]+=a[i][j+1]; } //REP(i,0,n)cerr<<a[3][i]<<" "; REP(i,0,q)REP(j,L[i],R[i]+1)ans[i]=min(ans[i],a[j][L[i]]+a[j][R[i]]-a[j][j]); 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...