공정한 랜덤 뽑기 & 명단 추첨기
참가자 명단을 자유롭게 넣고 원하는 인원수만큼 공정하게 선별하거나, 랜덤 팀(조)을 즉시 나눌 수 있습니다.
당첨자 발표
무작위 추첨 공정성 원리 및 활용 가이드
회식 자리 경품 추첨이나 팀 프로젝트 조 배정, 온라인 이벤트 당첨자를 뽑을 때 가장 중요한 것은 '누구에게나 완벽히 동등한 확률이 적용되는가'입니다. TESTYOUR의 랜덤 뽑기 도구는 별도 프로그램 설치나 회원가입 없이 웹 브라우저에서 바로 공정한 선별 작업을 수행할 수 있도록 설계되었습니다.
1. 왜 일반 랜덤 정렬 대신 '피셔-예이츠(Fisher-Yates) + 암호학적 난수'를 쓰나요?
간단하게 만들어진 일부 웹 뽑기 도구는 자바스크립트의 Array.sort(() => Math.random() - 0.5) 방식을 사용하곤 합니다. 하지만 이 방식은 브라우저 엔진의 정렬 알고리즘 특성상 특정 위치의 이름이 더 자주 뽑히거나 덜 뽑히는 통계적 편향이 발생할 수 있습니다.
본 추첨기는 브라우저 표준 Web Crypto API의 암호학적 난수 생성기(crypto.getRandomValues)와 기각 샘플링(Rejection Sampling) 기반 피셔-예이츠 셔플을 결합해, 입력된 모든 참가자가 정확히 동일한 확률(1/N)로 선택되도록 보장합니다.
2. 실생활에서 이렇게 활용해 보세요
- 회사·모임 인원 선별: 소규모 모임이나 대규모 워크숍 명단에서 필요한 인원수(1명~원하는 인원)만 공정하게 추리거나 점심 내기 당번 뽑기
- 발표 순서 & 조 편성: 스터디나 동아리 모임에서 이름만 붙여넣고 원하는 팀 수로 즉시 균등 배분
- 추가/패자부활 추첨: 1차 당첨자를 먼저 뽑은 뒤, 이미 뽑힌 사람을 빼고
남은 인원 중 추가 뽑기버튼으로 결원 보충
3. 자주 묻는 질문 (FAQ)
Q. 입력한 이름이나 개인 명단이 서버에 저장되나요?
아니요. 참가자 명단 파싱부터 난수 생성, 결과 출력까지 모든 연산은 사용자의 브라우저 기기 안에서만 오프라인처럼 동작하며, 입력하신 이름은 외부 서버로 전송되거나 기록되지 않습니다.
Q. 엑셀이나 카톡에서 복사한 명단을 그대로 붙여넣어도 되나요? 이름에 띄어쓰기가 들어가면 어떻게 하나요?
네. 기본값으로 줄바꿈(엔터), 쉼표(,), 띄어쓰기를 모두 구분자로 인식하며, 만약 '홍 길동'이나 '개발 1팀'처럼 띄어쓰기가 포함된 항목을 하나로 유지하고 싶다면 상단의 '띄어쓰기' 체크박스를 해제하시면 됩니다. 동명이인이 아니라면 '중복 이름 자동 제거' 옵션을 켜 두어 실수로 한 사람이 두 번 들어가는 것을 막을 수 있습니다.