题目:
分析1:
上一年做过,竟然没做出来!
按照身高从高到低的放即可,因为低的不会影响高的。
排序后,第二个元素代表其放在哪个位置。
分析2,:
按照从低到高。留位置即可。
刚开始自己想的时候还以为不可行。
代碼:用分析1的,insert大显身手!!!
class Solution {
public:
static bool cmp(vector<int>& v1,vector<int>& v2)
{
if(v1[0]==v2[0]) return v1[1]<v2[1];
return v1[0]>v2[0];
}
vector<vector<int>> reconstructQueue(vector<vector<int>>& people) {
sort(people.begin(),people.end(),cmp);
vector<vector<int>> ans;
for(int i=0;i<people.size();i++)
{
ans.insert(ans.begin()+people[i][1],people[i]);
}
return ans;
}
};