Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

RGB7280 - Шинэ жилийн урамшуулал

Нэгэн онлайнаар үйл ажилгаагаа явуулдаг байгуулга (Энэ байгуулгыг бид цаашид X гэж дуудах болно) бүх хэрэглэгчдээ шинэ жилийн урамшуулал болгож рейтинг нь нэмхээр шийджээ.

Энэ сайт нь n хэрэглэгчтэй. Хэрэглэгч бүрийн хувьд энэ шинэ жилээр болохыг хүсдэг рейтинг нь бид мэддэг. i дахь хэрэглэгчийн болохыг хүсдэг рейтинг нь ai юм.

X сайтын админууд нь маш нарийн хүмүүс учир хэрэглэгчдэд тийм их рейтинг нэмэх хүсэлгүй байгаа. Админууд нь хэрэглэгчиддээ рейтинг тогтоохдоо адилхан рейтингтэй хүн байлгахгүйн дээр нийлбэр нь хамгийн бага байхыг хүссэн.

X сайтад хэрэглэгчиддээ рейтинг тогтооход нь тусална уу.

Input

Эхний мөрөнд (1 ≤ n ≤ 3·105) тоо өгөгдөнө. Дараагийн мөрөнд зайгаар тусгаарлагдсан n урттай a1, a2, . . . , an дараалал өгөгдөнө.

Output

b1, b2, . . . , bn дараалал хэвлэнэ. bi нь i дахь хэрэглэгчийн шинээр тогтоогдсон рейтинг болно.

Example

Input 1:

3
5 1 1

Output 1:

5 1 2

 

Input 2:

1
10000000

Output 2:

10000000

 


Нэмсэн:Bataa
Огноо:2014-01-04
Хугацааны хязгаарлалт:1s
Эх кодын хэмжээний хязгаарлалт:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Програмчлалын хэлүүд:ADA95 ASM32 BASH BF C NCSHARP CSHARP C++ 4.3.2 CPP C99 CLPS LISP sbcl LISP clisp D ERL FORTRAN HASK ICON ICK JAVA JS-RHINO JULIA LUA NEM NICE OCAML PAS-GPC PAS-FPC PERL PHP PIKE PRLG-swi PYTHON PYPY3 PYTHON3 RUBY SCALA SCM guile ST TCL WHITESPACE
Эх сурвалж:https://codeforces.com/problemset/problem/379/C

hide comments
2024-11-08 13:20:40
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

struct User {
long long rating;
int index;
};

int main() {
long long n;
cin >> n;
vector<User> users(n);

for (int i = 0; i < n; i++) {
cin >> users[i].rating;
users[i].index = i;
}

sort(users.begin(), users.end(), [](const User &a, const User &b) {
return a.rating < b.rating;
});

vector<long long> result(n);

long long last_assigned_rating = 0;
for (int i = 0; i < n; i++) {
if (users[i].rating > last_assigned_rating) {
result[users[i].index] = users[i].rating;
last_assigned_rating = users[i].rating;
} else {
result[users[i].index] = last_assigned_rating + 1;
last_assigned_rating++;
}
}

for (int i = 0; i < n; i++) {
cout << result[i] << " ";
}

return 0;
}
2023-03-09 15:17:45
test aldaataimuu?
codeforce deer davsan

Last edit: 2023-03-09 15:18:19
2022-09-26 06:01:34
joe mama
2020-01-20 15:53:44
10
4 5 10 5 2 14 15 6 10 6
2020-01-20 13:08:07


Last edit: 2020-01-20 13:08:41
2020-01-20 11:22:11 Bataa
1 10 2 11 3 4 7 8 6 9
2020-01-20 11:21:51 Bataa
10
1 10 1 10 1 1 7 8 6 7
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.