It may be helpful to review
How do I post a question effectively?. There are a few issues that the monks here are having in understanding your question.
The data you have posted does not clearly map to data in memory. I'm guessing that your array initialization code would actually look like:
my @array = (
'a[1:0]',
'a[3:2]',
'a[5:4]',
);
but I could be wrong. This is why Anonymous Monk asked you to post your array initialization statement. Because of how you've presented it, my first thought was you has some weird array slice question.
How one maps your dataset to your output is unclear. Again, I could guess at an answer (biggest first number, smallest second number), but that's just a guess. Does every element necessarily look like a[*:*]? You said you "tried with the hash", but it is unclear to me how a hash would solve this issue. Can you post your preliminary code that shows some results?
If I implemented this (based on some wild guesses), I'd use a regular expression in a for loop and cache the max and min in script-level variables. Or possibly use max and min from List::Util in conjunction with maps (e.g. my ($max) = max map /(\d)/, @list;). But this is largely dictated by your spec, which is poorly defined.
#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.