https://codeforces.com/contest/1945/problem/D
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<ll, ll> PII;
typedef vector<long long> VI;
#define rep(i,a,n) for (int i=a;i<=n;i++)
#define per(i,a,n) for (int i=a;i>=n;i--)
#define pb(i) push_back(i)
#define int long long
#define INF 0x3f3f3f3f
#define oz 998244353
#define endl '\n'
#define N 200010
const int mod = 1e9 + 7;
int p[N], si[N];
int find(int x) {
if (x != p[x]) p[x] = find(p[x]);
return p[x];
}
//size[find(b)] += size[find(a)];
//p[find(a)] = find(b);
void solve() {
int n, m;
cin >> n >> m;
VI a(n), b(n);
rep(i, 0, n - 1)cin >> a[i];
rep(i, 0, n - 1)cin >> b[i];
int sum = 0;
int res = 1e18;
per(i, n - 1, 0) {
if (i < m) {
res = min(res, sum + a[i]); //在前m个人中找最小方案
}
sum += min(a[i], b[i]); //每次贪心选取较小价值
}
cout << res << endl;
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(0), cout.tie(0);
int T = 1;
cin >> T;
while (T --)
solve();
return 0;
}