constructive algorithms greedy implementation math sortings

Please click on ads to support us..

Python Code:

import math

def solve():
    n=int(input())
    a=list(map(int,input().split()))
    idx=a.index(n)
    even=a[::2]
    odd=a[1::2]
        odd.sort()
    even.sort()
    d=dict()
    for i,x in enumerate(a):
        d[x]=i
    res=[None]*n
    if idx&1:
        t=n
        for x in odd:
            res[d[x]]=t
            t-=1
        for x in even:
            res[d[x]]=t
            t-=1
    else:
        t=n
        for x in even:
            res[d[x]]=t
            t-=1
        for x in odd:
            res[d[x]]=t
            t-=1
    print(*res)






T=int(input())
for _ in range(T):
    solve()


Comments

Submit
0 Comments
More Questions

1714E - Add Modulo 10
1714A - Everyone Loves to Sleep
764A - Taymyr is calling you
1714B - Remove Prefix
1264F - Beautiful Fibonacci Problem
52A - 123-sequence
1543A - Exciting Bets
1714D - Color with Occurrences
215B - Olympic Medal
1445A - Array Rearrangment
1351A - A+B (Trial Problem)
935B - Fafa and the Gates
1291A - Even But Not Even
1269A - Equation
441A - Valera and Antique Items
1702C - Train and Queries
816B - Karen and Coffee
838D - Airplane Arrangements
148B - Escape
847G - University Classes
1110A - Parity
1215B - The Number of Products
604C - Alternative Thinking
1204C - Anna Svyatoslav and Maps
322A - Ciel and Dancing
1689B - Mystic Permutation
1711B - Party
1702D - Not a Cheap String
1714F - Build a Tree and That Is It
1703F - Yet Another Problem About Pairs Satisfying an Inequality