시크릿 산타 짝꿍 추첨기
랜덤
시크릿 산타 추첨은 수학적으로 'derangement'(고정점이 없는 순열) 입니다 ─ 모든 참가자가 다른 사람에게 선물하고, 자기 자신을 뽑지 않습니다. 이 도구는 입력한 제외 페어(부부·룸메이트·서로 뽑으면 안 되는 사람들) 를 모두 만족하는 균일 랜덤 derangement 를 생성합니다. 각 배정은 개별 reveal 카드로 숨겨져 있어서, 추첨을 진행하는 사회자가 전체 매핑을 보지 않고도 참가자에게 한 명씩 기기를 건네줄 수 있습니다. 최대 2,000 번 무작위 셔플을 시도하며, 제외 그래프가 너무 빡빡하면(예: 셋이서 서로 다 제외) 잘못된 결과 대신 '해를 찾을 수 없음' 을 알려 줍니다. 모든 계산은 로컬에서 실행되며 이름이나 매칭 정보가 외부로 나가지 않습니다.
참고
derangement 는 브라우저에서 로컬 무작위 시도(최대 2,000 회) 로 계산됩니다. 비공개 운영: 각 배정이 개별 reveal 버튼 뒤에 숨겨져 있어 사회자가 모든 매칭을 보지 않고도 한 명씩 기기를 넘길 수 있습니다. 완전 익명 추첨을 하려면 모두가 본인 카드를 확인한 뒤에만 '전체 복사' 를 사용하세요.
사용법
- 참가자 2 명 이상을 추가합니다(Add 로 행 추가).
- 필요하면 다른 참가자 칩을 눌러 제외합니다 ─ 부부·형제 등 서로 뽑으면 안 되는 페어.
- Draw 를 눌러 배정 결과를 생성합니다.
- 사회자가 기기를 한 명씩 건네면, 각자 Reveal 을 눌러 본인 결과만 확인하고 Hide 한 뒤 넘깁니다.
- 프리셋(가족 크리스마스·회사 파티·커플 모임·대규모 홀리데이) 으로 빠르게 시작할 수 있습니다.
자주 묻는 질문
- 'derangement' 가 뭐고 왜 필요한가요?
- derangement 는 모든 원소가 원래 위치를 벗어난 순열입니다. 시크릿 산타에서는 '아무도 자기 자신을 뽑지 않음' 을 뜻합니다. 그냥 셔플하면 약 1/e ≈ 37% 확률로 누군가 자기 자신을 뽑게 됩니다. 이 도구는 자기 자신을 뽑는 셔플을 모두 거부하므로 결과는 항상 유효한 derangement 입니다.
- 제외 목록은 어떻게 동작하나요?
- 각 참가자에게 '뽑으면 안 되는 사람' 목록이 있습니다. 부부·룸메이트·형제는 보통 서로 제외해서 선물 교환이 너무 뻔해지지 않게 합니다. 알고리즘은 최대 2,000 번 무작위 셔플을 시도하고, 모든 제외를 만족하는 첫 번째 결과를 반환합니다. 유효한 배정이 없으면(예: 셋이 모두 서로 제외) '해를 찾을 수 없음' 을 표시합니다 ─ 제약을 풀거나 참가자를 늘려야 합니다.
- 사회자가 한 기기로 진행하면 비밀이 유지되나요?
- 모두가 규칙을 따르면 유지됩니다: 각자 Reveal 을 눌러 본인 카드만 보고 Hide 한 뒤 다음 사람에게 건네면 됩니다. 사회자는 카드가 지나갈 때 보지 않아야 합니다. 절대적인 비밀 유지가 필요하면 각자 자기 기기에서 같은 시드로 추첨하거나(로드맵), 1 인 1 mailto 링크 발송 기능을 사용하세요.
- 두 사람이 서로를 뽑을 수도 있나요?
- 네 ─ 상호 선물(A→B 와 B→A) 은 기본 허용입니다. 상호 페어를 원치 않으면, 해당 쌍을 양방향으로 제외하면 그 라운드에서는 대칭 케이스가 차단됩니다.
관련 도구
랜덤 숫자 생성기
암호학적 난수로 원하는 범위의 숫자를 뽑아 줍니다 — 중복 허용/금지, 정렬 옵션 포함.
그룹 / 팀 나누기
이름 목록을 균등한 랜덤 그룹으로 나눕니다 — 그룹 수 또는 그룹당 인원 선택.
추첨기
이름 목록에서 N명을 뽑으세요 — 암호학적 난수로 공정하게, 중복 허용 선택 가능.
주사위 & 동전 굴리기
암호학적 난수로 d4~d100 주사위를 굴리거나 동전을 던지세요.
랜덤 뽑기 — 룰렛 & 사다리
돌림판이나 사다리타기로 공정하게 뽑으세요.
비밀번호 생성
브라우저를 벗어나지 않는 강력한 무작위 비밀번호를 생성하세요.