2006年12月23日20:30 カテゴリMathLightweight Languages Math - プレゼント交換 良問ですね。 鍋あり谷あり:[プログラミング]あなたならどうお書きになります1.0 クリスマスパーティーでプレゼント交換を行う。 全員、誰かにプレゼントを一つあげ、誰かからプレゼントを一つもらう。 参加者は、自分と同じグループに属している人にはプレゼントをあげない。 どのグループにも属さない人や、複数のグループに属する人はいない。 この条件を満たすようなプレゼント交換が等確率で出るような、プレゼント交換方法生成プログラムを実装せよ以下、perlでの素直な実装。 use strict; use warnings; sub px { my $party = shift; my ( %from, %to ); for my $to ( keys %$party ) { my