| 比赛 |
五一大礼包 |
评测结果 |
AATTTTTTTTATTTTTTT |
| 题目名称 |
Ave Mujica |
最终得分 |
16 |
| 用户昵称 |
LikableP |
运行时间 |
61.561 s |
| 代码语言 |
C++ |
内存使用 |
5.03 MiB |
| 提交时间 |
2026-05-04 11:52:16 |
显示代码纯文本
#include <cstdio>
typedef long long ll;
const int MAXN = 5e5 + 10;
int n, k;
int A[MAXN], B[MAXN];
int visA[MAXN], visB[MAXN];
ll ans = 0x7fffffffffffffff;
void dfs(int pos, ll now) {
if (now >= ans) return ;
if (pos > k) {
ans = now;
return ;
}
for (int i = 1; i <= n; ++i) if (!visA[i]) {
for (int j = i; j <= n; ++j) if (!visB[j]) {
visA[i] = visB[j] = 1;
dfs(pos + 1, now + A[i] + B[j]);
visA[i] = visB[j] = 0;
}
}
}
int main() {
freopen("Mujica.in", "r", stdin);
freopen("Mujica.out", "w", stdout);
scanf("%d %d", &n, &k);
for (int i = 1; i <= n; ++i) scanf("%d", &A[i]);
for (int i = 1; i <= n; ++i) scanf("%d", &B[i]);
dfs(1, 0);
printf("%lld\n", ans);
return 0;
}