注意循环跳出的条件。

#include <iostream>
#include <cstdio>
#include <algorithm>
#define MAX 100001

using namespace std;

long long gum[MAX], monster[MAX];

bool cmp(long long a, long long b){
    return a > b;
}

int main(){
    int t, m, n;
    int ans; 
    cin >> t;
    while (t--) {
        cin >> n >> m;
        long long ans = 0;
        for(int i = 0; i < n; i++){
            cin >> gum[i];
        }
        for(int i = 0; i < m; i++){
            cin >> monster[i];
        }
        sort(gum, gum + n, cmp);
        sort(monster, monster + m);
        for(int i = 0; i < n; i++){
            if(i >= m || gum[i] <= monster[i]){
                break;
            }
            ans += gum[i] - monster[i];
        }
        cout << ans << endl;
    }
    return 0; 
}