#!/usr/bin/perl -w my (%nations_in_class); foreach $line(<>) { my ($nation,$classes_list) = ($line =~ /(\S+)\s+(.*)/); my @class_set = split /\s+/,$classes_list; foreach my $class(@class_set) { push @{$nations_in_class{$class}}, $nation; } } for my $class (sort keys %nations_in_class) { print $class, ' ' x (20-length $class), join (' ', @{$nations_in_class{$class}}), "\n"; }