#!/usr/bin/perl -w # use List::Util qw(shuffle); use Algorithm::FastPermute ('permute'); # my @array = (1..shift()); # permute { # print "@array\n"; # Print all the permutations # } @array; @h= 0..11; # = @m[0] # @m[0]= [0..11] = h[j]; # @m[1][j]= ? = as[j] # @m[2]= (5,11,2,12,8,10,9,4,6,3,7,1); # @as = ? @r = (4,10,1,11,7,9,8,3,5,2,6,0); permute { @as = @h; # = @m[1] $i++; print "\r$i"; for $j (0..11){ $b[$j] = $as[$as[$j]]; # = @m[2] } if (@b ~~ @r){ print "\nAmigo secreto:\n"; for $j (1..12){ print "$j -> ",$as[$j-1]+1,"\n"; } exit 0; } } @h; print "\n¡NO TIENE SOLUCION!\n"; __END__ Newsgroups: es.ciencia.matematicas Date: Thu, 26 Dec 2013 15:32:08 -0800 (PST) Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=81.43.122.61; posting-account=ykXa0AoAAACekmaz9eF1PtyhblwrZOQk NNTP-Posting-Host: 81.43.122.61 User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: bailando con lobas From: betisista Injection-Date: Thu, 26 Dec 2013 23:32:08 +0000 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Xref: aioe.org es.ciencia.matematicas:17933 Hola: =20 En un baile hay 12 hombres, n=FAmeros de 1 a 12, y 12 mujeres numeradas, de= 1 a 12. A cada hombre se le asigna un =93amigo secreto=94 entre los otros = 11. Todos bailaron todas las piezas. En la primera pieza cada hombre bail= =F3 con la mujer que tiene su mismo n=FAmero. A partir de all=ED, cada homb= re bail=F3 la nueva pieza con la mujer que hab=EDa bailado la pieza anterio= r con su amigo secreto.=20 En la tercera pieza las parejas fueron:=20 Hombres 1 2 3 4 5 6 7 8 9 10 11 1= 2=20 Mujeres 5 11 2 12 8 10 9 4 6 3 7 1= =20 =20 Halla el n=FAmero del amigo secreto de cada hombre Gracias