Advertisement
Guest User

List::MoreUtils.

a guest
Aug 8th, 2012
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 0.70 KB | None | 0 0
  1. sub minmax (@) {
  2.     return if ! @_;
  3.     my $min = my $max = $_[0];
  4.  
  5.     for (my $i = 1; $i < @_; $i += 2) {
  6.         if ($_[$i-1] <= $_[$i]) {
  7.             $min = $_[$i-1] if $min > $_[$i-1];
  8.             $max = $_[$i]   if $max < $_[$i];
  9.         } else {
  10.             $min = $_[$i]   if $min > $_[$i];
  11.             $max = $_[$i-1] if $max < $_[$i-1];
  12.         }
  13.     }
  14.  
  15.     if (@_ & 1) {
  16.         my $i = $#_;
  17.         if ($_[$i-1] <= $_[$i]) {
  18.             $min = $_[$i-1] if $min > $_[$i-1];
  19.             $max = $_[$i]   if $max < $_[$i];
  20.         } else {
  21.             $min = $_[$i]   if $min > $_[$i];
  22.             $max = $_[$i-1] if $max < $_[$i-1];
  23.         }
  24.     }
  25.  
  26.     return ($min, $max);
  27. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement