我正在应对编程挑战,在提出问题之前我已经看过这个主题:
情况是这样的:
-我有我的向量对:vector< pair<int, int> > rank;
-我已经实现了一个谓词来按第二个元素并按降序对成对的向量进行比较和排序:
struct predicate
{
bool operator()(const std::pair<int, int> &left, const std::pair<int, int> &right)
{
return left.second < right.second;
}
}
sort(rank.rbegin(), rank.rend(), predicate());
Run Code Online (Sandbox Code Playgroud)
编程挑战将为第二个元素提供重复的值,在这种情况下,我必须将第一个元素按其插入向量对的时间排序,例如:
电压 1 3 2 4 4 5 33 3
排序必须是:
4 5 2 4 1 3 33 3
当我用我设计的测试用例测试我的解决方案时,问题就出现了:
电压 1 2 16 3 11 2 20 3 18 2 39 39 23 22 12 19 123 4 145 6 3 5 26 4 9574 4 …