ARRANGE - Arranging Amplifiers

Scientists at the TIFR, Mumbai, are doing some cutting edge research on the Propagation of Signals. A young researcher comes up with a method of progressively amplifying signals, as they progress along a path. The method involves the placing of Amplifiers at regular distances along the line. Each amplifier is loaded with a number a(i), which is called its amplification factor. The method of amplification is simple: an amplifier which recieves a signal of strength X, and has Y loaded in it, results in a signal of strength Y^X [ Y to the power X]. In course of his research, the young scientist tries to find out, that given a set of n amplifiers loaded with a(0), a(1), a(2), ...., a(n-1), which particular permutation of these amplifiers, when placed at successive nodes, with the initial node given a signal of strength 1, produces the strongest output signal.

this is better illustrated by the following example : 5 6 4
4^(5^(6^1)) is the strength of the strongest signal, which is generated by putting amplifier loaded with 6 in first place, 5 in second place and 4 in third place.

Given a list of integers specifying the set of amplifiers at hand, you must find out the order in which they must be placed, to get the highest signal strength. In case their exist multiple permutations with same output, you should print the one which has bigger amplifiers first.


First line of input contains T, the number of test cases. For each test case first line contains a number ni, which is equal to the number of amplifiers available. Next line contains n integers, separated by spaces which denote the values with which the amplifiers are loaded.


Output contains T lines, one for each test case. Each line contains ni integers, denoting the order in which the amplifiers should be kept such that the result is strongest.


5 6 4
2 3

6 5 4
2 3

Constraints and Limits

T ≤ 20, Ni ≤ 10^5.
Each amplifier will be loaded with a positive integer p, 0 < p ≤ 10^9.
No two amplifier > 1 shall be loaded with the same integer.

hide comments
mkfeuhrer: 2016-06-18 22:43:30

yess!! AC 1go :-) nice greedy prob :-) and stl sort :-P

karthik1997: 2016-06-12 13:28:35

Huh .. Finally got Ac in 0.04s Wonder how could dat guy numbered 1 got AC in 0.02s

arpitsharma: 2016-05-26 21:05:42

Which sort should I use?
It gives TLE in Insertion.
Should I go quick or merge? Anybody help?

Liquid_Science: 2016-03-06 17:54:14

Really weird question , taught me to go on ,even if your approach seem silly!

Govind Lahoti: 2016-01-01 08:29:24

nice one:) awesome

darkhire21: 2015-10-27 20:41:18

hint compare 2^3^n and 3^2^n ...!!

darkhire21: 2015-10-27 20:10:53

@azizul bcoz 2->3 gives 3^2 =9
but 3->2 gives 2^3=8
so 2 3 is right ans ...!!!

azizul hakim: 2015-09-27 15:20:39

why is output for 2,3 is 2,3????
shouldn't it be 3,2 ??
because, 2^3<3^2

Anmol Pandey: 2014-10-25 12:48:41

first of all there can't be repetitions(except for 1).
for 2 1 3
ans is:
1 2 3

rajul: 2014-08-30 06:16:35

please check the result of this case:
2 1 3 2
shouldn't the ans be: 1 2 3 2

Added by:Ajay Somani
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ERL JS-RHINO NODEJS PERL6 VB.NET
Resource:CodeCraft 08 Anshuman Singh