@array = qw(6 6 5 5 1 1 1 3 3 3 3 2 2 2 2 4 4 4 4 4 8 8 8 8 8 8 8 8 7 7 7 7 7 7 7 7); __DATA__ 6 6 5 5 1 1 1 3 3 3 3 2 2 2 2 4 4 4 4 4 8 8 8 8 8 8 8 8 7 7 7 7 7 7 7 7 ==================== 1 = 1 2 2 = 1 3 3 = 1 4 4 = 2 3 5 = 2 4 6 = 2 5 7 = 3 4 8 = 3 5 9 = 4 6 10 = 4 7 11 = 6 7 12 = 7 8 12 counts $VAR1 = { '6' => 0, '3' => 0, '7' => 5, '2' => 0, '8' => 7, '1' => 0, '4' => 0, '5' => 0 }; 1 = 7 8 2 = 4 7 3 = 3 7 4 = 2 7 5 = 1 7 6 = 6 7 7 = 5 7 8 = 4 8 9 = 3 8 10 = 2 8 11 = 1 8 12 = 6 8 13 = 5 8 14 = 3 4 15 = 2 4 16 = 1 4 17 = 2 3 17 counts $VAR1 = { '6' => 0, '3' => 0, '7' => 1, '2' => 0, '8' => 1, '1' => 0, '4' => 0, '5' => 0 }; get_pairs1 produces: 36 rows get_pairs2 produces: 67 rows