我看了一下 一开始想拿多余填补少的 但是感觉可能出问题(怕wa)
就排序了一下 然后从后往前累加算平均数(符合题意的模拟)

class Solution {
public:
    /**
     * 返回重新分配后,满足牛牛要求的水量的瓶子最多的数量
     * @param n int整型 瓶子的数量
     * @param x int整型 牛牛的对瓶中的水量要求
     * @param a int整型vector 每个瓶子中的含水量
     * @return int整型
     */
int solve(int n, int x, vector<int>& a) {
    sort(a.begin(), a.end());
    long long int zs=0,num=0;
    for (int i = n - 1; i >= 0; i--)
    {
        if ((zs + a[i]) / (n - i) >= x)
        {
            zs += a[i];
            num = n - i;
        }
        else
        {
            break;
        }
    }
    return num;
}
};