1  #!/usr/bin/perl -w
 2  @panstwa=<STDIN>;
 3  chomp @panstwa;
 4  # porownywanie dlugosci nie ma sensu jesli nie wytniemy spacji
 5  # ale drukowac chcemy oryginalne nazwy panstw
 6  foreach $panstwo (@panstwa)
 7  {
 8          # robimy wiec kopie do hasza
 9          $napisy {$panstwo} = $panstwo;
10          # wycinamy  z niej spacje
11          $napisy {$panstwo} =~ s/ //;
12          # i zamieniamy duze litery na male
13          $napisy {$panstwo} =~ tr/A-Z/a-z/;
14          # mozna tez posortowac
15          $napisy {$panstwo} = join ("", sort split ("", $napisy {$panstwo}));
16  }
17  foreach $panstwo (@panstwa)
18  {
19      $suma = $napisy {$panstwo};
20      foreach $panstwo1 (@panstwa)
21      {
22          foreach $panstwo2 (@panstwa)
23          {
24              $proba = $napisy {$panstwo1} . $napisy {$panstwo2};
25              if (length ($suma) == length ($proba))
26              {
27                  $proba = join ("", sort split ("", $proba));
28                  if ($suma eq $proba)
29                  {
30                      print $panstwo1 . " + " . $panstwo2 . " = " . $panstwo . "\n";
31                  }
32              }
33          }
34      }
35  }
36

En son değiştirme: poniedziałek, 10 sierpnia 2015, 10:49