比赛 五一大礼包 评测结果 AAEEEEEEEEATTTTTTT
题目名称 Ave Mujica 最终得分 16
用户昵称 ChenBp 运行时间 29.863 s
代码语言 C++ 内存使用 3.44 MiB
提交时间 2026-05-04 11:50:14
显示代码纯文本
#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
typedef long long ll;
int a[1003],b[1003]/*,c[1000006]*/;
int n,k;
ll ans=0x3ffffffffffffff;
void dfs(int t,int x,int y,ll co){
    if(y==k){
        ans=min(ans,co);
        return;
    }
    if(t==n+1){
        return;
    }
    if(x+y<k) dfs(t+1,x+1,y,co+a[t]);
    if(x+y<k) dfs(t+1,x,y+1,co+a[t]+b[t]);
    if(x>0)dfs(t+1,x-1,y+1,co+b[t]);
    dfs(t+1,x,y,co);
}
int main(){
    freopen("Mujica.in","r",stdin);
    freopen("Mujica.out","w",stdout);
    cin>>n>>k;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    for(int i=1;i<=n;i++){
        cin>>b[i];
    }
    dfs(1,0,0,0);
    cout<<ans;
//    int tot=0;
//    for(int i=1;i<=n;i++){
//        for(int j=i;j<=n;j++){
//            c[++tot]=a[i]+a[j];
//        }
//    }
//    sort(c+1,c+1+tot);
//    ll ans=0;
//    for(int i=1;i<=k;i++){
//        ans+=c[i];
//    }
//    cout<<ans;
    return 0;
}