← 블로그 목록

숫자야구 완전 공략: 정보이론으로 4번 안에 맞히는 전략

숫자야구를 운으로만 하고 있었나요? 정보이론과 소거법 기반의 체계적 전략으로 거의 항상 4번 안에 정답을 찾는 방법을 알려드립니다.

숫자야구, 그냥 찍고 있지 않으신가요?

숫자야구는 간단해 보이지만 의외로 깊은 전략이 숨어 있는 게임입니다. 상대방이 생각한 3~4자리 숫자(각 자리 숫자는 모두 다름)를 제한된 횟수 안에 맞히는 이 게임, 단순히 감으로 찍으면 10번이 넘게 걸릴 수도 있습니다.

하지만 정보이론(Information Theory)최적 소거법을 활용하면 거의 항상 4~5번 안에 정답을 찾을 수 있습니다. 이 글에서 그 전략을 모두 공개합니다.

숫자야구 기본 규칙 복습

혹시 처음 접하시는 분을 위해 규칙부터 정리합니다.

  • Strike(스트라이크): 숫자와 위치가 모두 맞음
  • Ball(볼): 숫자는 맞지만 위치가 다름
  • Out: 해당 숫자가 정답에 없음

예시: 정답이 4 2 7이고, 내가 1 2 3을 불렀다면 → 1S 0B (2의 위치가 맞음)

3자리 숫자야구에서 가능한 경우의 수는 0~9 중 서로 다른 3개를 순서 있게 나열한 것으로 10 × 9 × 8 = 720가지입니다.

정보이론으로 이해하는 최적 첫 수

엔트로피란 무엇인가?

정보이론의 핵심 개념인 엔트로피(Entropy)는 "불확실성의 크기"를 나타냅니다. 게임 초반에는 720가지 가능성이 모두 열려 있으므로 엔트로피가 최대입니다. 좋은 추측은 이 엔트로피를 가장 빠르게 줄이는 것입니다.

즉, 한 번의 추측으로 가능한 경우의 수를 가장 균등하게 분할하는 숫자가 최적의 첫 수입니다.

최적 첫 수: 1 2 3 또는 0 1 2

컴퓨터 시뮬레이션으로 검증된 결과, 3자리 숫자야구에서 최적의 첫 추측은 0 1 2 또는 1 2 3처럼 연속된 작은 숫자 조합입니다.

이 추측의 결과는 총 14가지 패턴(0S0B, 1S0B, 0S1B, ... 3S0B)으로 나뉘는데, 각 패턴이 상대적으로 균등하게 경우의 수를 나눕니다. 특히 3S0B가 나오면 그 즉시 정답이고, 다른 결과들도 남은 경우를 80~150개 수준으로 줄여줍니다.

단계별 최적 전략

1단계: 첫 번째 추측 — 정보 최대화

추천 첫 수: 1 2 3

이 선택의 이유는 가장 많이 쓰이는 숫자 영역(1~3)을 테스트하면서, 결과에 따라 남은 경우의 수를 효율적으로 줄이기 때문입니다.

  • 0S 0B → 1, 2, 3이 모두 없음. 남은 후보: 약 60가지
  • 1S 0B → 정확히 한 자리만 맞음. 남은 후보: 약 120가지
  • 0S 1B → 숫자 하나는 있지만 위치가 틀림. 남은 후보: 약 108가지
  • 1S 1B → 스트라이크 1, 볼 1. 남은 후보: 약 80가지

2단계: 두 번째 추측 — 탐색 영역 확장

1단계 결과를 토대로 테스트하지 않은 숫자 영역을 탐색합니다.

1단계에서 0S 0B가 나왔다면(1, 2, 3 모두 없음) → 두 번째 추측: 4 5 6

1단계에서 1S 0B가 나왔다면 → 어떤 위치가 맞는지 특정하는 추측을 설계합니다.

핵심 원칙: 두 번째 추측은 첫 번째와 겹치는 숫자를 최소화해서 새로운 정보를 최대로 얻습니다.

3단계: 소거법으로 범위 압축

1~2번의 추측으로 얻은 정보를 조합하면 이미 가능한 경우가 20~50개 수준으로 줄어듭니다. 이때부터는 적극적인 소거법을 사용합니다.

소거법 4가지 규칙

  1. Out 처리된 숫자 완전 제거: 결과에서 Ball/Strike가 0개인 숫자는 정답에 절대 없습니다.
  2. Strike 자리 고정: 스트라이크가 난 자리의 숫자는 그 위치에 반드시 있습니다.
  3. Ball 숫자 재배치: Ball이 난 숫자는 다른 위치에 있어야 합니다. 시도한 위치는 제외하고 남은 자리에 넣어야 합니다.
  4. 교차 추론: 여러 번의 결과를 교차해서 더 많은 정보를 추론합니다.

실전 예시: 4번 안에 맞히기

정답을 7 3 9라 가정하고 전략을 따라가 보겠습니다.

1번째: 1 2 3 → 1S 0B

  • 1은 없음 (Out), 2는 없음 (Out)
  • 3이 Strike — 즉, 3번째 자리에 3이 있습니다

2번째: 4 5 6 → 0S 0B

  • 4, 5, 6 모두 없음
  • 이제 0, 7, 8, 9만 남고, 3번째 자리는 3으로 확정
  • 남은 후보 대폭 감소

3번째: 7 8 3 → 2S 0B

  • 3번째 자리 3은 이미 확정, Strike 하나 더 — 1번째 자리가 7로 확정
  • 8은 없음 (Out)
  • 남은 경우: 첫 자리 7, 셋째 자리 3 확정. 둘째 자리는 0 또는 9

4번째: 7 9 3 → 3S → 정답!

단 4번 만에 720분의 1 확률을 맞혔습니다.

고급 전략: 정답 후보 추적표 만들기

종이나 메모앱에 간단한 표를 만들면 훨씬 빠르게 정답에 도달할 수 있습니다.

추적표 구성

  • 있는 숫자 (Confirmed): Ball이나 Strike로 확인된 숫자 목록
  • 없는 숫자 (Eliminated): Out 처리된 숫자 목록
  • 자리 확정 (Fixed): 특정 자리에 어떤 숫자가 있는지
  • 자리 불가 (Excluded): Ball이 난 숫자가 있을 수 없는 자리

이 4가지 카테고리만 잘 관리해도 대부분 5번 이내에 정답을 찾을 수 있습니다.

4자리 숫자야구는 어떻게 다를까?

4자리의 경우 가능한 경우의 수는 10 × 9 × 8 × 7 = 5,040가지로 크게 늘어납니다. 하지만 전략 원칙은 동일합니다.

  • 첫 수: 0 1 2 3 또는 1 2 3 4 추천
  • 두 번째 수: 4 5 6 7 (겹침 없이 새 영역 탐색)
  • 세 번째 수부터 소거법 적용

잘 하면 5~6번 안에 맞출 수 있습니다.

숫자야구로 키울 수 있는 인지 능력

숫자야구는 단순한 운 게임이 아닙니다. 다음과 같은 고차원 인지 능력을 직접 훈련합니다.

  • 논리적 추론: 제한된 단서로 결론 도출하기
  • 작업 기억: 여러 조건을 머릿속에서 동시에 유지하기
  • 소거적 사고: 가능성을 체계적으로 줄여나가기
  • 전략적 계획: 단순히 맞히는 게 아니라 정보를 최대로 얻는 수를 선택하기
  • 패턴 인식: 결과들의 패턴에서 숨은 규칙 찾기

이런 이유로 숫자야구는 논리 사고력을 기르는 교육 도구로도 널리 활용됩니다. 실제로 코딩 인터뷰에서도 숫자야구 알고리즘 구현이 단골 문제로 등장합니다.

컴퓨터는 몇 번에 맞힐까?

최적화된 알고리즘(Knuth의 minimax 전략 응용)을 사용하면 3자리 숫자야구를 항상 5번 이내에 풀 수 있습니다. 평균은 약 4.2번입니다.

인간 플레이어도 이 전략을 익히면 평균 4~5번 안에 맞힐 수 있습니다. 처음엔 어색하지만 10판 정도 연습하면 자연스럽게 몸에 배게 됩니다.

오늘부터 바로 연습하기

전략을 머리로만 익히는 것보다 실제로 반복 플레이하는 것이 가장 빠른 학습법입니다. 아래 도구들로 바로 연습해보세요:

마무리: 전략이 있는 게임이 더 재밌다

숫자야구는 "운이 좋으면 맞힌다"는 게임에서 "전략을 알면 거의 확실히 맞힌다"는 게임으로 바뀝니다. 정보를 최대화하는 첫 수, 체계적인 소거법, 교차 추론. 이 세 가지만 기억해도 당신의 승률은 극적으로 올라갑니다.

오늘 바로 친구나 가족과 한 판 해보세요. 그리고 4번 안에 맞혔을 때의 그 쾌감을 느껴보시기 바랍니다! 🎯