in reply to Complex sort of array of hashes into an array of arrays

What have you tried? What didn't work? Shown effort is appreciated around the monastery, and it helps us gauge your experience level so we can tailor our answers. See How do I post a question effectively?. As well, note how your index on $matrix[1]{C} = 30 got linkified. This is because you did not wrap your code in <code> tags. See Writeup Formatting Tips.(Fixed, thank you)

You appear to want to sort your keys in descending numeric order. This can be accomplished with sort combined with the block {$b <=> $a}. For adding keys, I would likely use reverse to invert the hash (How do I look up a hash element by value?) and then push them onto the end of the array rather than trying to keep track of indices to do it all at once. If you are not familiar with dealing with complex data structures, a read through perlreftut would likely be helpful. Provide us with some templated code (even if it doesn't work right), and we can help guide you to your solution.