第四题,实际上就是排序后求差分

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main()
{
    int n, k;
    cin >> n >> k;
    vector<int> arr(n);
    for(int i = 0; i < n; i++) cin >> arr[i];

    sort(arr.begin(), arr.end());

    int j = 0;
    cout << arr[j] << endl;
    j++;
    int i = 1;
    while(j < n){
        if(arr[j-1] == arr[j]){
            j++;
            continue;
        }
        else{
            cout << arr[j] - arr[j-1] << endl;
            j++;
            i++;
            if(i >= k) break;
        }
    }
    for(j = i; j < k; j++) cout << 0 << endl;

    return 0;
}