int main() { int n; cin >> n; vector<pair<int, int>> nums; for (int i = 1; i <= n; i++) { int num; cin >> num; nums.emplace_back(num, i); } sort(nums.begin(), nums.end(), [](auto& a, auto& b) { return a.first == b.first ? a.second > b.second:a.first < b.first; }); vector<int> res(n); for (int i = 0; i < n; i++) { res[nums[i].second - 1] = i + 1; } cout << res[0]; for (int i = 1; i < n; i++) { cout << " " << res[i]; } cout << endl; return 0; }
点赞 评论

相关推荐

牛客网
牛客企业服务