팀 나누기
이름을 적으면 원하는 팀 수나 인원으로 골고루 나눠줍니다
한 줄에 한 명씩, 또는 쉼표로 구분해 적으세요.
참가자를 두 명 이상 적으면 팀을 나눌 수 있습니다.
두 가지 나누는 방식
무엇을 고정할지에 따라 고르시면 됩니다.
- 팀 개수로 나누기 — 팀 수를 정해두고 인원을 골고루 나눕니다. 축구나 피구처럼 팀 수가 정해진 경우에 씁니다.
- 한 팀 인원으로 나누기 — 한 조에 몇 명씩 들어갈지를 정해두고 필요한 만큼 조를 만듭니다. 4명씩 조별 과제를 짜는 경우입니다. 마지막 조는 인원이 모자랄 수 있습니다.
인원이 팀 수로 나눠떨어지지 않으면 앞 팀부터 한 명씩 더 갑니다. 8명을 3팀으로 나누면 3·3·2가 됩니다. 한 명씩 돌아가며 배정하기 때문에 팀 크기 차이가 1명을 넘지 않습니다.
흔한 셔플 실수를 피했습니다
웹에서 목록을 섞을 때 가장 자주 보이는 코드는 arr.sort(() => Math.random() - 0.5)입니다. 짧고 그럴듯해 보이지만 골고루 섞이지 않습니다. 정렬 알고리즘은 비교 결과가 일관된다는 것을 전제로 동작하는데, 매번 다른 답을 주는 비교자를 넣으면 그 전제가 깨집니다. 결과적으로 원래 순서에 가까운 배열이 훨씬 자주 나옵니다.
이 도구는 피셔–예이츠 셔플을 씁니다. 뒤에서부터 앞으로 훑으면서 각 자리를 아직 뽑지 않은 것 중 하나와 맞바꾸는 방식으로, 모든 배열이 정확히 같은 확률로 나옵니다. 난수는 브라우저의 암호학적 생성기에서 가져오고, 나머지 연산에서 생기는 편향도 없앴습니다.
조건을 붙이는 기능을 넣지 않은 이유
"이 둘은 갈라놓기", "저 셋은 같은 팀으로" 같은 조건은 넣지 않았습니다. 조건이 붙기 시작하면 결과가 더 이상 무작위가 아니게 되고, 조건을 입력하는 화면이 도구 본체보다 복잡해집니다.
그런 제약이 필요한 상황이라면 애초에 무작위로 나눌 일이 아닐 가능성이 높습니다. 사람이 직접 정하는 편이 빠르고 결과도 납득이 됩니다. 이 도구는 아무 조건 없이 공평하게나누는 일만 합니다.
결과 옮기기
"결과 복사"를 누르면 팀 구성이 글자로 복사됩니다. 카카오톡 단체방이나 메모장에 그대로 붙여넣을 수 있습니다. 결과는 이 화면에만 있고 서버로 전송되거나 저장되지 않으며, 페이지를 새로고침하면 사라집니다.
자주 묻는 질문
- Q인원이 딱 나눠떨어지지 않으면 어떻게 되나요?
앞 팀부터 한 명씩 더 갑니다. 8명을 3팀으로 나누면 3명·3명·2명이 됩니다. 팀 크기 차이가 최대 1명을 넘지 않도록 한 명씩 돌아가며 배정하기 때문입니다.
어느 팀이 더 많아질지는 섞은 결과에 따라 달라지므로, 다시 나누기를 누르면 인원 구성도 함께 바뀝니다.
- Q"팀 개수"와 "한 팀 인원"은 뭐가 다른가요?
무엇을 고정할지가 다릅니다. "팀 개수로 나누기"는 팀 수를 정해두고 인원을 골고루 나눕니다. 축구처럼 팀 수가 정해진 경우에 씁니다.
"한 팀 인원으로 나누기"는 한 조에 몇 명씩 들어갈지를 정해두고 필요한 만큼 조를 만듭니다. 4명씩 조별 과제를 만든다면 이쪽입니다. 마지막 조는 인원이 모자랄 수 있습니다.
- Q같은 사람이 계속 같은 팀이 됩니다
우연입니다. 매번 완전히 새로 섞으므로 이전 결과가 다음 결과에 영향을 주지 않습니다. 사람이 적을수록 같은 조합이 반복될 확률이 자연스럽게 높아집니다. 6명을 2팀으로 나누는 경우의 수는 10가지뿐이라 두세 번 만에 같은 조합이 나오는 게 이상하지 않습니다.
특정 인원을 갈라놓거나 붙여놓는 기능은 넣지 않았습니다. 그런 조건이 붙기 시작하면 "무작위"가 아니게 되고, 조건을 넣는 화면이 도구보다 복잡해집니다.
- Q결과가 정말 무작위인가요?
피셔–예이츠 셔플을 브라우저의 암호학적 난수 생성기와 함께 씁니다. 웹에서 흔히 보이는 `arr.sort(() => Math.random() - 0.5)` 방식은 쓰지 않았습니다. 그 방식은 골고루 섞이지 않아서 원래 순서에 가까운 결과가 훨씬 자주 나옵니다.
실제로 고르게 섞이는지 확인하는 검사도 들어 있습니다. 세 개를 600번 섞어 각 자리에 각 값이 모두 나타나는지, 20개를 50번 섞어 원래 순서가 그대로 나오지 않는지 봅니다.
- Q결과를 다른 곳에 옮길 수 있나요?
"결과 복사"를 누르면 팀 구성이 글자로 복사됩니다. 카카오톡이나 메모장에 그대로 붙여넣을 수 있습니다.
결과는 이 화면에만 있고 서버로 전송되거나 저장되지 않습니다. 페이지를 새로고침하면 사라지므로, 남겨야 한다면 복사해 두시거나 화면을 캡처하세요.