사다리 타기 (온라인 사다리게임)
참가자와 결과를 무작위 사다리로 짝지어 줍니다
참가자 2명 이상을 입력하세요. 결과가 참가자보다 적으면 빈칸으로 채워집니다. 브라우저 안에서만 처리됩니다.
세로줄과 가로줄, 그리고 공정함
사다리 타기는 위에 참가자, 아래에 결과를 두고 세로줄로 이은 뒤, 무작위 가로줄을 놓아 내려가며 만나는 결과를 정하는 방식입니다. 이름을 누르면 그 사람이 어디로 내려가는지 경로가 사다리 위에 그려집니다.
왜 항상 공정한가 — 가로줄은 ‘맞바꿈’이다
사다리가 공정한 데는 수학적인 이유가 있습니다. 가로줄 하나는 이웃한 두 세로줄을 서로 맞바꾸는 것일 뿐입니다. 맞바꿈을 아무리 많이 반복해도 순서가 뒤섞일 뿐, 결과가 빠지거나 두 번 나오지 않습니다. 그래서 참가자와 결과는 항상 1:1로 대응합니다 — 다섯 명이 타면 정확히 다섯 개의 결과에 하나씩 도착합니다.
이 도구는 그 가로줄을 암호학적 난수로 놓습니다. 또 같은 행에서 가로줄이 서로 붙지 않게 해, 내려갈 때 “왼쪽으로 갈지 오른쪽으로 갈지” 헷갈리는 경우가 없도록 합니다.
결과가 버튼을 누를 때만 정해지는 이유
사다리는 ‘사다리 만들기’ 버튼을 누른 순간에만 만들어져 화면에 고정됩니다. 새로고침하거나 창 크기를 바꿔도 그대로입니다. 다시 하고 싶으면 ‘다시 만들기’를 누르세요. 화면을 그릴 때마다 사다리가 몰래 바뀌면 함께 보며 결과를 확인할 때 신뢰가 깨지기 때문에, 일부러 이렇게 만들었습니다.
그림이 아니라 목록이 공식 결과다
사다리 그림은 보기 좋지만, 화면을 못 보는 사람에게는 소용이 없습니다. 그래서 이 도구는 그림 아래에 ‘참가자 → 결과’ 목록을 항상 함께 보여 줍니다. 이 목록이 스크린리더로 읽히는 공식 결과이고, 그림은 그것을 눈으로 따라가는 보조입니다.
랜덤 뽑기·팀 나누기와 무엇이 다른가
셋 다 무작위로 정하지만 쓰임이 다릅니다.
- 사다리 타기 — 참가자마다 서로 다른 결과를 하나씩 짝지을 때(각자 벌칙·당번·선물).
- 랜덤 뽑기 — 목록에서 몇 명만 고르거나 전체 순서를 정할 때.
- 팀 나누기 — 사람들을 여러 팀으로 묶을 때.
이럴 때 씁니다
- 벌칙·당번 — 청소·설거지·발표 당번을 각자에게 배정.
- 내기 — 커피·점심값 낼 사람 한 명 뽑기(당첨 하나, 나머지 빈칸).
- 선물 교환 — 마니또처럼 참가자에 결과(대상)를 짝지을 때.
정리하면
- 가로줄은 맞바꿈 — 항상 1:1로 공정합니다.
- 결과는 버튼을 누를 때만. 새로고침에 흔들리지 않습니다.
- 목록이 공식 결과. 그림은 보조이고 입력은 브라우저 밖으로 안 나갑니다.
자주 묻는 질문
- 무엇을 할 수 있나요?
- 참가자와 결과를 입력하면 세로줄을 무작위 가로줄로 이어 사다리를 만들고, 각 참가자가 어느 결과에 도착하는지 정합니다. 벌칙·당번·순서·내기 상대 정하기 등에 씁니다. 참가자 이름을 누르면 그 경로가 사다리 위에 표시됩니다.
- 사다리는 정말 공정한가요?
- 네. 가로줄은 이웃한 두 세로줄을 서로 맞바꾸는 것뿐이라, 가로줄을 몇 개를 놓든 참가자와 결과는 항상 1:1로 대응됩니다(빠지거나 겹치는 결과가 없습니다). 가로줄 위치는 브라우저의 암호학적 난수로 정해집니다.
- 결과가 새로고침하면 바뀌나요?
- 바뀌지 않습니다. 사다리는 '사다리 만들기' 버튼을 누른 순간에만 만들어져 화면에 고정됩니다. 다시 하고 싶으면 '다시 만들기'를 누르세요. 새로고침이나 창 크기 변경으로 결과가 몰래 바뀌지 않도록 설계했습니다.
- 결과를 참가자보다 적게 넣어도 되나요?
- 됩니다. 결과가 참가자 수보다 적으면 나머지는 빈칸으로 채워집니다. 예를 들어 5명 중 '당첨'만 하나 넣으면 나머지 4칸은 빈칸(-)이 되어 한 명만 당첨됩니다.
- 화면을 못 보는 사람도 결과를 알 수 있나요?
- 네. 사다리 그림은 시각 보조이고, 공식 결과는 그림 아래의 '참가자 → 결과' 목록입니다. 이 목록은 스크린리더로 그대로 읽히므로, 그림 없이도 누가 무엇에 걸렸는지 확인할 수 있습니다.
- 입력한 이름이 서버로 전송되나요?
- 아닙니다. 사다리 생성과 결과 계산 모두 브라우저 안에서 처리되고, 입력은 어디로도 전송·저장되지 않습니다.