제출 #345656

#제출 시각아이디문제언어결과실행 시간메모리
345656shmadK개의 묶음 (IZhO14_blocks)C++14
53 / 100
2 ms512 KiB
#include <bits/stdc++.h> #define nl '\n' #define pb push_back #define E exit(0) #define all(v) v.begin(),v.end() #define ff first #define ss second #define sz(s) (s).size() using namespace std; using ll=long long; using pii=pair<int,int>; using pll=pair<ll,ll>; const int N=1e6+5; const int INF=1e9+7; const int eps=1e-6; int a[101],dp[101][101]; void solve() { int n,k; cin>>n>>k; for (int i=1;i<=n;i++) cin>>a[i]; for (int i=0;i<=n;i++) { for (int j=0;j<=k;j++) { dp[i][j]=INF; } } dp[0][0]=0; for (int i=1;i<=n;i++) { for (int q=1;q<=k;q++) { int mx=0; for (int j=i-1;j>=0;j--) { mx=max(mx,a[j+1]); dp[i][q]=min(dp[j][q-1]+mx,dp[i][q]); } } } cout<<dp[n][k]; } ll test=1; int main () { // freopen(".in","r",stdin); // freopen(".out","w",stdout); ios_base::sync_with_stdio(0); cin.tie(); // cin>>test; while (test--) solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...