AZ Tools

シークレットサンタ ペア抽選

ランダム

シークレットサンタの抽選は数学的に「攪乱順列(derangement)」 ─ すべての参加者が他人に贈り、自分自身は引かない順列です。このツールは指定した除外ペア(夫婦・ルームメイト・引いてはいけない組み合わせ)をすべて満たす一様ランダムな攪乱順列を生成します。各割当は個別 reveal カードで隠されているため、司会者は全体マッピングを見ずに参加者へ 1 人ずつ端末を回せます。最大 2,000 回ランダムシャッフルを試行し、除外グラフが過剰に厳しい場合(例:3 人全員が互いに除外)は不正な結果ではなく「解なし」と報告します。すべてローカル実行で、名前やマッチング情報は外部に送信されません。

参加者
この人が引いてはいけない人をクリック:
この人が引いてはいけない人をクリック:
この人が引いてはいけない人をクリック:
この人が引いてはいけない人をクリック:
プリセット
メモ

攪乱順列はブラウザ内のランダム試行(最大 2,000 回)で計算します。プライバシー運営:各割当が個別 reveal ボタンで隠されているため、司会者は全マッチングを見ずに端末を 1 人ずつ回せます。完全匿名抽選には、全員が自分のカードを確認した後でのみ「全コピー」を使ってください。

使い方

  1. 参加者を 2 人以上追加(Add で行を追加)。
  2. 必要なら他の参加者チップをクリックして除外 ─ 夫婦・兄弟など引いてはいけないペア。
  3. Draw で割当を生成。
  4. 司会者が端末を 1 人ずつ回し、各自 Reveal で自分の結果のみ確認、Hide してから次の人へ。
  5. プリセット(家族クリスマス・社内パーティ・カップル会・大規模ホリデー)で素早く開始できます。

よくある質問

「derangement」とは?なぜ必要?
derangement(攪乱順列)はすべての要素が元の位置から外れた順列です。シークレットサンタでは「誰も自分を引かない」を意味します。普通にシャッフルすると約 1/e ≈ 37% の確率で誰かが自分を引きます。このツールは自分を引いたシャッフルをすべて却下するので、結果は常に有効な攪乱順列です。
除外リストの仕組みは?
各参加者に「引いてはいけない人」リストがあります。夫婦・ルームメイト・兄弟は通常互いを除外し、贈り物交換が露骨にならないようにします。アルゴリズムは最大 2,000 回ランダムシャッフルし、すべての除外を満たす最初の結果を返します。有効な割当が存在しない場合(例:3 人全員が互いに除外)、「解なし」と表示します ─ 制約を緩めるか参加者を増やしてください。
司会者が 1 台の端末で運営しても秘密は守られる?
全員がルールに従えば守られます:各自 Reveal で自分のカードのみ確認、Hide してから次の人へ。司会者はカードが通過する際に見ないこと。完全な秘密が必要なら、同じシードで各自の端末で抽選するか(ロードマップ)、1 人ずつの mailto 送信機能を使用してください。
2 人が互いを引くこともある?
はい ─ 相互贈り(A→B かつ B→A)はデフォルトで許可されます。相互ペアを避けたい場合、その組を双方向で除外すればそのラウンドでは対称ケースがブロックされます。

関連ツール