| 比赛 |
五一大礼包 |
评测结果 |
AAEEEEEEEEAEEEEEEE |
| 题目名称 |
Ave Mujica |
最终得分 |
16 |
| 用户昵称 |
zcx |
运行时间 |
2.259 s |
| 代码语言 |
C++ |
内存使用 |
3.43 MiB |
| 提交时间 |
2026-05-04 11:00:14 |
显示代码纯文本
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int INF=1e9+2;
int n,k;
int a[12],b[12];
int f[12][12][12];
void init(){
for(int i=0;i<=n+1;i++){
for(int j=0;j<=n+1;j++){
for(int p=0;p<=n+1;p++){
f[i][j][p]=INF;
}
}
f[i][0][0]=0;
}
}
signed main()
{
freopen("Mujica.in","r",stdin);
freopen("Mujica.out","w",stdout);
ios::sync_with_stdio(0);
cin.tie(0);
cin>>n>>k;
for(int i=1;i<=n;i++) cin>>a[i];
for(int i=1;i<=n;i++) cin>>b[i];
init();
for(int i=1;i<=n;i++){
for(int j=0;j<=k;j++){
for(int p=0;p<=j;p++){
f[i][j][p]=min(f[i][j][p],f[i-1][j][p]);
if(p<j && j>0) f[i][j][p]=min(f[i][j][p],f[i-1][j-1][p]+a[i]);
if(p>0) f[i][j][p]=min(f[i][j][p],f[i-1][j][p-1]+b[i]);
if(i>0 && p>0) f[i][j][p]=min(f[i][j][p],f[i-1][j-1][p-1]+a[i]+b[i]);
}
}
}
cout<<f[n][k][k];
return 0;
}