무엇이 중복되지 않는가
참가자 세 명과 결과 세 칸이 있으면 각 참가자는 한 칸에 도착하고 각 칸은 한 번만 사용됩니다. “정리”를 두 칸에 입력하면 두 명 모두 정리 역할을 받을 수 있습니다. 중복 없는 대상은 문자열의 뜻이 아니라 결과 칸입니다.
한 후보만 여러 번 고르는 룰렛과 달리, 사다리는 모든 참가자에게 한 번에 하나씩 배정합니다. 먼저 목적이 하나 선택인지 모두 배정인지 정하세요.
| 목적 | 맞는 도구 | 주의 |
|---|---|---|
| 다음 메뉴 하나 | 룰렛 | 같은 목록의 다음 회전은 이전 결과도 가능 |
| 3명의 역할 하나씩 | 사다리 | 같은 역할 문구를 여러 칸 넣으면 그만큼 배정 |
| 공식 추첨 증명 | 이 서비스 범위 밖 | 서버의 독립 검증·감사 증명 기능 없음 |
세 사람의 가능한 배정은 여섯 개
A·B·C가 결과 1·2·3에 도착하는 순서를 쓰면 아래 여섯 순열입니다. 구현은 Fisher–Yates 방식에서 매 단계 균등 index를 사용합니다. 그 전제 아래 각 순열은 1/6이고 한 사람이 특정 칸을 받을 확률은 1/3입니다.
| A의 결과 | B의 결과 | C의 결과 |
|---|---|---|
| 1 | 2 | 3 |
| 1 | 3 | 2 |
| 2 | 1 | 3 |
| 2 | 3 | 1 |
| 3 | 1 | 2 |
| 3 | 2 | 1 |
난수를 나머지로 바로 쓰지 않는 이유
32비트 보안 난수의 가능한 개수 2³²은 3 같은 항목 수로 정확히 나누어지지 않습니다. 그대로 나머지를 쓰면 일부 index가 아주 조금 더 많은 원본 값을 가집니다.
secureRandomIndex는 항목 수로 나누어떨어지는 범위 밖의 값을 버린 뒤 나머지를 구합니다. 사다리는 이 index로 순열을 선택합니다. 보안 난수를 사용할 수 없는 브라우저에서 일반 난수로 몰래 대체하는 구조는 아닙니다.
선택한 배정을 가로줄로 옮기기
예를 들어 목표가 A→3, B→1, C→2라면 맨 아래의 경로 순서는 B·C·A가 되어야 합니다. 위의 A·B·C 순서에서 A와 B를 바꾸고 다음 행에서 A와 C를 바꾸면 됩니다.
구현은 한 행에 인접 교환 하나씩 배치해 같은 높이에서 겹치는 가로줄을 피합니다. 만든 가로줄을 실제로 다시 따라가 처음 선택한 순열과 일치하는지 검사합니다. 표시 애니메이션이 새 결과를 고르지 않습니다.
제자리 결과와 빈 가로줄도 가능한가
A→1, B→2, C→3도 여섯 순열 중 하나입니다. 모든 참가자가 자기 아래 칸으로 가는 완전 제자리 배정에는 교환이 필요 없으므로 가로줄이 없을 수 있습니다. 가로줄이 적거나 제자리라고 실패로 판단하면 정상 결과를 다시 뽑게 됩니다.
결과를 본 뒤 마음에 들지 않는 배정만 재생성하면 처음의 균등 선택과 다른 진행이 됩니다. 다시 생성할 조건은 결과 공개 전에 함께 정하세요.
생성 뒤 바꾸면 새 추첨
라운드 ID는 라운드를 구분하는 식별자입니다. 그것만으로 같은 결과를 다시 만들거나 운영 서버가 공정성을 증명하는 기능은 없습니다. 브라우저 내부 코드를 사용자가 바꾼 경우까지 원격으로 검증하지 않습니다.
- 2–8명의 이름과 같은 개수의 결과를 확인합니다.
- 생성하면 이름·결과·가로줄·매핑·라운드 ID가 해당 snapshot으로 고정됩니다.
- 한 명씩 경로를 공개하거나 전체 공개를 선택합니다.
- 편집으로 돌아가면 확인 후 기존 공개 상태와 snapshot을 폐기하고 다시 생성합니다.
세 명으로 확인하는 짧은 연습
이름을 A·B·C, 결과를 진행·기록·정리로 입력하세요. 한 명씩 공개하며 끝 칸을 적고, 전체 공개 목록과 비교합니다. 어느 순열이 나와도 결과 칸 세 개가 한 번씩 쓰였는지가 확인할 항목입니다. 예제 그림과 다른 배정이 나오는 것은 정상입니다.
자주 묻는 질문
제자리 연결을 제외하면 더 공정한가요?
현재 규칙은 제자리를 포함한 모든 순열을 허용합니다. 제외하면 가능한 결과 집합이 달라지므로 같은 규칙으로 설명할 수 없습니다.
같은 문구가 두 명에게 나왔는데 오류인가요?
서로 다른 결과 칸에 같은 문구를 썼다면 가능합니다. 결과 칸의 1:1 연결과 문구의 중복을 구분하세요.
라운드 ID로 결과를 다시 확인할 수 있나요?
현재 ID는 불투명한 식별자입니다. 서버 조회, 결과 복원 seed 또는 독립적인 추첨 증명으로 제공되지 않습니다.