田忌赛马

vector<int> advantageCount(vector<int>& A, vector<int>& B) {
    // 选A中比b稍大的,若没有则选A中最小的
    multiset<int> ms(A.begin(), A.end());
    vector<int> ans;
    for (int b : B) {
        auto it = ms.upper_bound(b);
        if (it == ms.end()) it = ms.begin();
        ans.push_back(*it);
        ms.erase(it);
    }
    return ans;
}