Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package olymp;
- import net.egork.collections.intcollection.IntArrayList;
- import net.egork.io.IOUtils;
- import net.egork.misc.ArrayUtils;
- import net.egork.utils.io.InputReader;
- import net.egork.utils.io.OutputWriter;
- public class RCC_C {
- public void solve(int testNumber, InputReader in, OutputWriter out) {
- int n = in.readInt();
- int[] d = IOUtils.readIntArray(in, n);
- int max = ArrayUtils.maxElement(d);
- IntArrayList[] positions = new IntArrayList[max + 1];
- for (int i = 1; i <= max; i++) {
- positions[i] = new IntArrayList();
- }
- for (int i = 0; i < n; i++) {
- positions[d[i]].add(i);
- }
- for (int i = 1; i <= max; i++) {
- positions[i].sort();
- }
- int[] a = new int[n];
- for (int dVal = max, num = n; dVal >= 1; dVal--) {
- for (int i = 0; i < positions[dVal].size(); i++) {
- int pos = positions[dVal].get(i);
- a[pos] = num--;
- }
- }
- out.printLine(a);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement