BYE (부전승) 시스템 완전 분석 — 발생 원인·분산·N=9 케이스
왜 발생하나(2의 거듭제곱 룰)·BYE 받는 사람의 4가지 이점·IBJJF 분산 원칙·N=9 극단 케이스 해결법·선수가 BYE 받았을 때 활용법.
BJJ 대회의 "운빨" 의 근원 — BYE (부전승). 참가 인원이 2의 거듭제곱이 아닐 때 일부 선수가 자동 진출. 어떻게 배정되는지, 어떤 사람이 받는지, 어떻게 공정하게 분산하는지 — 깊이 다룹니다.
1. BYE 란?
한국어 "부전승" — 상대 없이 다음 라운드 자동 진출. 영어 BYE 또는 Walkover. 1라운드 BYE 면 그 선수는 2라운드부터 시작.
2. 왜 발생하나 — 2의 거듭제곱 룰
싱글 엘리미네이션 브래킷 크기 B 는 항상 2의 거듭제곱 (2, 4, 8, 16, 32, 64). 참가자 N 이 B 미만이면 빈 자리 = BYE.
| N | 브래킷 (B) | BYE 수 | 실전 1R |
|---|---|---|---|
| 3 | 4 | 1 | 1 (3명 중 1명 BYE) |
| 5 | 8 | 3 | 1 (5명 중 3명 BYE) |
| 6 | 8 | 2 | 2 (6명 중 2명 BYE) |
| 7 | 8 | 1 | 3 (7명 중 1명 BYE) |
| 9 | 16 | 7 | 1 (9명 중 7명 BYE!) |
| 12 | 16 | 4 | 4 |
| 15 | 16 | 1 | 7 |
3. BYE 가 유리한 이유 (불공평성)
- ① 체력 ↑ — 1경기 안 뛰니 결승까지 체력 보존.
- ② 정보 ↑ — 다음 상대들 경기 보고 패턴 분석 가능.
- ③ 워밍업 시간 ↑ — 매트 사용 가능, 코너 코치와 작전 회의.
- ④ 심리 ↑ — "한 번 자동 진출했다" 자신감.
4. BYE 배정 원칙
IBJJF + 한국 메이저 대회 표준:
- 강자 보호 — 시드 1번부터 BYE 우선 받음. 1·2 시드가 1라운드 약자 만나는 것보다 BYE 받는 게 일관성.
- BYE 분산 — 같은 분기에 BYE 2개 몰리지 않게. 예: BYE 2명 → 1명은 top half, 1명은 bottom half.
- BYE-BYE 매치 X — BYE 두 명이 같은 매치에 들어가면 매치 자체 무효. 자동 차단.
- 시드 없을 때 — 도장 분리 (separateByGym) 후 BYE 분산.
5. N=9 케이스 — BYE 7명?
참가 9명이면 브래킷 16, BYE 7개. 9명 중 7명이 1라운드 안 뛰고 2라운드 직행. 실전 1라운드는 1경기만. 이때:
- BYE 7명 = 시드 1~7번 자동 진출
- 실전 1경기 = 시드 8 vs 시드 9
- 해당 매치 승자 = 시드 8 자리에서 2라운드 진출
- 2라운드부터는 일반 8명 토너먼트와 동일
이런 케이스 → 참가비 절반 환불 / 또는 라운드 로빈 전환 검토 권장. "내려가는 비행기" 가장 심한 케이스.
6. BYE 회피 운영 옵션
- ① 부문 통합 — 5명 화이트 + 4명 블루 → 9명 합쳐서 시드만 분리. 라운드 로빈도 검토.
- ② 라운드 로빈 전환 — N=3~6 면 풀리그 더 공정. BYE 없음.
- ③ 부분 환불 — BYE 받은 선수에게 참가비 10~20% 환불 (드물지만 일부 대회).
- ④ 보너스 매치 — BYE 선수에게 다른 부문 무차별급 추가 출전 옵션.
7. 선수 입장 — BYE 받았을 때
- 워밍업 — 매트 사용 가능. 체온 유지 + 가벼운 드릴.
- 식사·수분 — 다음 매치까지 1~2시간 → 가벼운 간식 OK.
- 정보 수집 — 다음 상대 후보 2명의 1라운드 관전 → 스타일 파악.
- 심리 안정 — "운 좋게 올라간 게 아니라 시드 받은 것" 마인드.
8. BYE 분산 알고리즘 (롤러 자동)
롤러는 다음 알고리즘 자동 적용:
- 참가자 N 으로 브래킷 크기 B = nextPow2(N) 계산
- BYE 수 = B − N
- 시드 입력된 선수 ≥ 2명 → IBJJF 슬롯 순서 [1,8,5,4,3,6,7,2] 적용 + BYE 는 빈 슬롯 (상위 시드부터)
- 시드 없으면 → 도장 분리 후 매치별 첫 슬롯부터 채움 → 마지막 매치들이 BYE
- 같은 분기 BYE 2개 안 몰리도록 next_match_id 라우팅
9. 결론
BYE 는 싱글 엘리미네이션의 피할 수 없는 부작용. 완벽한 공정성은 불가능 — 운영자는 분산·시드로 최대한 줄이고, 선수는 받았을 때 잘 활용. N=9 같은 극단적 케이스는 부문 통합·라운드 로빈 전환 적극 검토.
💡 롤러는 BYE 자동 분산
대진표 생성 시 BYE 분산 + BYE-BYE 매치 자동 차단. 시드 입력 시 강자 우선 BYE 배정. seedDivision 함수 (src/lib/bracket.ts) 가 처리.
BYE부전승대진표시드