본문으로 건너뛰기
bobob

게임 가이드게임 공략 · 4/27

숫자야구는 몇 번 만에 맞힐 수 있을까

같은 비밀 번호라도 질문 순서에 따라 네 번 만에 끝나기도 하고 여덟 번을 넘기기도 합니다. 가능한 번호를 모두 늘어놓고 전수 계산해 질문 고르는 요령을 찾았습니다.

Bob10분 읽기

핵심 요약

  • 우리 게임의 비밀 번호는 0을 포함한 서로 다른 숫자라 3자리는 720가지, 4자리는 5,040가지입니다
  • 좋은 질문은 남은 후보를 고르게 나누는 질문입니다
  • 잘 고른 전략은 3자리를 최악 6회, 4자리를 최악 7회 안에 맞힙니다
목차

숫자야구는 운보다 질문을 고르는 솜씨가 결과를 좌우하는 게임입니다. 같은 비밀 번호라도 어떤 순서로 던지느냐에 따라 네 번 만에 끝나기도 하고 여덟 번을 넘기기도 합니다. 이 글은 이 사이트의 숫자야구 규칙을 코드로 확인한 뒤, 가능한 비밀 번호를 모두 늘어놓고 컴퓨터로 전수 계산한 결과를 바탕으로 적은 횟수로 맞히는 요령을 정리합니다.

한눈에 보기

항목3자리4자리
가능한 비밀 번호720가지5,040가지
한 번의 답으로 나올 수 있는 결과9가지14가지
첫 질문 뒤 평균 남는 후보약 180개약 931개
남은 후보 중 아무거나 던질 때 평균5.24회5.47회
컴퓨터가 고른 좋은 전략의 평균5.02~5.07회5.24~5.27회
그 전략의 최악6~7회7~8회
알려진 최적값-평균 약 5.21회, 최악 7회

우리 게임의 규칙과 경우의 수

  • 3자리와 4자리 모드가 있습니다. 비밀 번호는 0~9 가운데 서로 다른 숫자로 만들어지고, 0으로 시작할 수도 있습니다.
  • 추측도 서로 다른 숫자로만 입력할 수 있고, 이미 던진 숫자는 다시 던질 수 없습니다.
  • 숫자와 자리가 모두 맞으면 스트라이크(S), 숫자는 있지만 자리가 다르면 볼(B), 겹치는 숫자가 하나도 없으면 OUT입니다.
  • 10회 안에 모든 자리를 맞히면 이깁니다.
  • '오늘의 숫자로 하기'를 누르면 한국 시간 기준 하루 동안 모두에게 같은 비밀 번호가 나옵니다.
  • 숫자 버튼을 오른쪽 클릭하면 그 숫자에 줄이 그어져 '없는 숫자'로 표시해 둘 수 있습니다.

0을 쓸 수 있으므로 3자리는 10 × 9 × 8 = 720가지, 4자리는 10 × 9 × 8 × 7 = 5,040가지입니다. 종이로 할 때처럼 1~9만 쓰기로 하면 504가지와 3,024가지로 줄어드니, 다른 곳에서 익힌 요령을 가져올 때는 이 차이를 기억해 두세요.

우리 게임은 0을 포함한 열 개 숫자가 어느 자리에나 똑같이 올 수 있어서 재미있는 성질이 하나 생깁니다. 첫 질문은 무엇을 던지든 결과의 분포가 똑같습니다. 123을 던지든 507을 던지든, 3자리라면 OUT이 나올 확률은 똑같이 210/720입니다. 720가지 첫 질문을 모두 넣어 계산해 확인했습니다. 첫 수는 고민할 필요가 없고, 두 번째 수부터가 진짜 승부입니다.

한 번의 답이 주는 정보

3자리 모드에서 첫 질문을 던졌을 때 나올 수 있는 9가지 결과와 각각에 해당하는 비밀 번호 수
3자리 모드에서 첫 질문을 던졌을 때 나올 수 있는 9가지 결과와 각각에 해당하는 비밀 번호 수

3자리에서 첫 질문의 답은 9가지 가운데 하나입니다. 가장 흔한 결과는 1B(252가지, 35%)와 OUT(210가지, 29%)이고, 1S가 126가지(18%)로 뒤를 잇습니다. 2S 1B는 나올 수 없습니다. 두 자리가 맞았는데 남은 한 숫자까지 비밀 번호에 들어 있다면, 그 숫자가 갈 곳은 남은 한 자리뿐이라 스트라이크가 되기 때문입니다. 4자리에서 3S 1B가 나오지 않는 것도 같은 이유입니다.

이 분포는 한 번의 답으로 얻는 정보가 생각보다 적다는 것을 보여 줍니다. 결과가 9가지로 고르게 나뉜다면 첫 질문 뒤 평균 80개가 남겠지만, 실제로는 1B와 OUT에 몰려 있어 평균 180개가 남습니다. 정보 이론의 말로 옮기면, 720가지 가운데 하나를 가려내는 데 필요한 정보는 약 9.5비트인데 첫 답이 주는 정보는 평균 2.25비트로, 결과가 9가지인 질문이 이론상 줄 수 있는 최대치 3.17비트에도 못 미칩니다. 4자리는 필요한 정보가 약 12.3비트, 첫 답이 주는 정보가 평균 2.77비트입니다.

그래서 좋은 질문의 기준은 하나입니다. 어떤 답이 나와도 남는 후보가 비슷하게 적도록, 가능한 답이 고르게 나뉘는 질문을 고르는 것입니다. 한쪽 결과가 나올 것이 뻔한 질문은 거의 아무것도 알려 주지 않습니다.

두 번째 질문 고르는 법

첫 질문은 모두 같으니 012를 던졌다고 해 보겠습니다. 결과마다 남는 후보와, 720가지 질문을 모두 따져 찾은 좋은 두 번째 질문(던진 뒤 평균 남는 후보가 가장 적은 질문 가운데 하나)은 다음과 같습니다.

첫 결과 (012)남은 후보좋은 두 번째 질문의 예그 뒤 평균 남는 후보
OUT210개34543.3개
1B252개10358.9개
2B63개12313.4개
1S126개03429.0개
1S 1B42개0349.8개
2S21개0235.3개

표에서 규칙이 보입니다.

  • OUT이면 012는 모두 버리고 새 숫자 세 개를 던집니다(345).
  • 볼이 나왔다면 012 가운데 일부를 자리를 옮겨 다시 쓰고, 나머지 자리는 새 숫자로 채웁니다(1B → 103, 2B → 123).
  • 스트라이크가 나왔다면 한 숫자는 제자리에 두고 나머지를 새 숫자로 바꿉니다(1S → 034).

한 번의 질문으로 '어떤 숫자가 들어 있는가'와 '어느 자리인가'를 동시에 묻는 셈입니다. 옛 숫자를 옮겨 쓰면 자리에 대한 정보가, 새 숫자를 섞으면 어떤 숫자가 있는지에 대한 정보가 함께 들어옵니다.

실제 예시: 비밀 번호 507을 6번 만에

비밀 번호 507을 맞히는 동안 회차마다 남은 후보 수가 720에서 1까지 줄어드는 과정
비밀 번호 507을 맞히는 동안 회차마다 남은 후보 수가 720에서 1까지 줄어드는 과정

사람이 흔히 쓰는 방식으로 풀어 본 예시입니다. 각 단계의 후보 수는 조건에 맞는 번호를 컴퓨터로 모두 세어 확인했습니다.

회차던진 숫자결과남은 후보알게 된 것
1123OUT210개1·2·3은 없다. 남은 숫자는 0·4·5·6·7·8·9
24561B72개4·5·6 가운데 하나가 다른 자리에 있다
37891B24개7·8·9 가운데 하나가 다른 자리에 있고, 나머지 한 숫자는 0뿐이다
40681B6개0은 첫째 자리가 아니고, 6과 8은 없다
55701S 2B1개남은 6개를 모두 다른 결과로 가르는 수를 던졌다
65073S정답

세 번째 수까지는 겹치지 않는 숫자로 숫자의 정체를 확인하고, 네 번째 수에서 자리를 좁힌 뒤, 다섯 번째 수로 남은 후보를 모두 갈랐습니다. 4회가 끝났을 때 남은 후보는 507, 570, 590, 904, 905, 940의 여섯 개였고, 570을 던지면 여섯 개가 모두 다른 결과를 내기 때문에 5회의 답만 보면 정답을 확실히 알 수 있습니다.

이 방식은 논리가 깔끔하지만 가장 빠르지는 않습니다. 2회가 끝난 72개 상황에서 789를 던지면 평균 17.0개가 남지만, 컴퓨터가 고른 047(앞서 던진 4를 자리를 옮겨 다시 쓰고 아직 안 던진 0과 7을 섞은 수)을 던지면 평균 13.8개가 남습니다. 789는 결과가 OUT일 수 없는 질문이기도 합니다. 남은 두 숫자가 0·7·8·9 가운데 있다는 것을 이미 알기 때문에 7·8·9가 모두 빠질 수는 없습니다. 이미 아는 사실을 다시 묻는 몫만큼 정보가 줄어드는 것입니다.

전략별 평균과 최악 횟수

비밀 번호를 모두(3자리 720가지, 4자리 5,040가지) 하나씩 정해 두고, 전략마다 끝까지 풀게 해 몇 번 만에 맞히는지 세었습니다. 표에서 '가장 잘 나누는 수'는 던진 뒤 평균 남는 후보가 가장 적은 수, '정보량이 가장 큰 수'는 가능한 답이 가장 고르게 나뉘는 수입니다. '아무거나'가 들어간 전략은 무작위가 섞이므로 3자리는 200번, 4자리는 30번 반복한 평균이고, 최악은 반복하는 동안 나온 가장 긴 경우입니다.

전략3자리 평균3자리 최악4자리 평균4자리 최악
남은 후보 중 아무거나5.24회9회5.47회9회
첫 두 수를 겹치지 않게, 이후 후보 중 아무거나5.11회8회5.58회9회
첫 두 수를 겹치지 않게, 이후 후보 중 가장 잘 나누는 수5.04회7회5.45회8회
매번 후보 중 가장 잘 나누는 수5.15회8회5.32회8회
후보가 아닌 수까지 따져 가장 잘 나누는 수5.07회6회5.27회7회
후보가 아닌 수까지 따져 최악을 가장 줄이는 수5.16회6회5.39회7회
후보가 아닌 수까지 따져 정보량이 가장 큰 수5.02회7회5.24회8회

'첫 두 수를 겹치지 않게'는 3자리에서 123과 456, 4자리에서 0123과 4567을 차례로 던지는 방식입니다.

3자리 모드에서 전략별로 맞히기까지 던진 횟수의 분포
3자리 모드에서 전략별로 맞히기까지 던진 횟수의 분포

표에서 읽을 수 있는 것을 정리하면 다음과 같습니다.

  • 후보만 던져도 10회는 넉넉합니다. 표의 어느 전략이든 3자리·4자리 모두 모든 번호를 10회 안에 맞혔고, 앞선 결과와 맞는 후보를 아무렇게나 골라 던지는 방식도 가장 길었던 경우가 9회였습니다. 10회를 넘긴다면 앞선 결과와 맞지 않는 수를 던지고 있을 가능성이 큽니다.
  • 3자리는 첫 두 수를 겹치지 않게 던지는 것이 효과적입니다. 123과 456으로 시작하고 이후 잘 나누는 후보를 고르면 평균 5.04회로, 컴퓨터가 매번 전체를 따진 결과(5.02~5.07회)와 거의 같습니다. 사람이 따라 하기 가장 좋은 방법입니다.
  • 4자리는 두 번째 수를 첫 결과에 맞춰 바꿔야 합니다. 0123 다음에 무조건 4567을 던지면 오히려 평균이 늘어납니다(5.45~5.58회). 4자리 첫 질문의 결과는 1B(29%)와 2B(25%)가 가장 흔한데, 이때 좋은 두 번째 질문은 1045나 1435처럼 첫 수의 숫자 일부를 옮겨 쓰고 새 숫자를 섞은 수입니다. 계산해 보면 4567이 가장 좋은 두 번째 질문인 것은 첫 결과가 OUT(7%)일 때뿐입니다.
  • 후보가 아닌 수가 더 나을 때가 있습니다. 답이 될 수 없는 수는 그 자리에서 맞힐 가능성은 없지만, 후보를 더 고르게 나누어 전체 횟수를 줄이기도 합니다. 앞의 두 번째 질문 표에서 1B 뒤에 고른 103도 답이 될 수 없는 수입니다(103이 답이라면 012의 결과는 2B여야 합니다). 최악을 3자리 6회, 4자리 7회까지 줄인 전략은 모두 이런 수를 섞어 썼습니다.
  • 4자리의 이론적 최적값은 평균 약 5.21회입니다. 평균을 가장 줄이는 전략은 26,274 ÷ 5,040 ≈ 5.21회이고, 어떤 번호든 7회 안에 맞힐 수 있다는 것이 증명되어 있습니다. 위 표의 컴퓨터 전략(5.24~5.27회)은 이 한계에 꽤 가깝습니다.

흔한 실수

  1. 결과를 이미 아는 질문 던지기. 앞의 예에서 789가 OUT일 수 없었던 것처럼, 답의 일부가 정해진 질문은 그만큼 정보를 덜 줍니다. 던지기 전에 '이 질문에 나올 수 있는 답이 몇 가지이고, 고르게 나뉘는가'를 떠올려 보세요.
  2. 앞선 결과와 맞지 않는 수를 무심코 던지기. 후보가 아닌 수도 잘 고르면 도움이 되지만, 대부분은 한 번에 맞힐 기회만 버립니다. 확신이 없으면 앞선 모든 결과와 맞는 후보 가운데서 고르세요. 그것만으로도 평균 5.2~5.5회에 맞힙니다.
  3. 4자리에서 0123 다음 무조건 4567 던지기. 두 번째 수는 첫 결과에 맞춰야 합니다. 1B나 2B가 나왔다면 첫 수의 숫자 일부를 자리를 옮겨 다시 쓰세요.
  4. 스트라이크와 볼을 한꺼번에 해석하기. 1S 1B처럼 섞인 결과는 '몇 개의 숫자가 들어 있는가(S+B)'와 '그중 몇 개가 제자리인가(S)'를 나눠 적어야 헷갈리지 않습니다.
  5. 0을 빼놓고 생각하기. 우리 게임은 0이 첫째 자리에도 올 수 있습니다. 1~9만 쓰는 방식에 익숙하다면 후보를 셀 때 0을 잊기 쉽습니다.

연습 방법

  • 3자리에서 123과 456으로 시작하기. 두 수의 결과만으로 어떤 숫자가 들어 있는지 대부분 정리됩니다. 세 번째 수부터는 후보를 직접 적어 보며 푸는 연습을 하세요.
  • 남은 후보 어림하기. 한 수를 던질 때마다 남은 후보가 몇 개일지 어림해 보세요. 수십 개 단위로라도 셀 수 있게 되면 좋은 질문이 눈에 보이기 시작합니다.
  • 숫자별로 표 그리기. 종이에 0부터 9까지 적고 '있음·없음·모름'과 가능한 자리를 표시하면, 섞인 결과를 해석하기가 훨씬 쉬워집니다. 없는 것으로 확인된 숫자는 게임 화면에서도 오른쪽 클릭으로 줄을 그어 두세요.
  • 오늘의 숫자로 비교하기. 오늘의 숫자는 하루 동안 모두에게 같은 비밀 번호가 나오니, 친구와 같은 문제를 몇 번 만에 맞혔는지 비교해 보세요.
  • 4자리는 3자리를 5회 안에 푸는 것이 익숙해진 뒤에. 4자리는 경우의 수가 7배라, 3자리에서 두 번째 질문을 고르는 요령이 몸에 밴 뒤 넘어가는 편이 좋습니다.

정리

숫자야구는 질문 하나하나가 남은 후보를 얼마나 고르게 나누느냐의 게임입니다. 우리 게임은 0을 포함한 서로 다른 숫자라 3자리 720가지, 4자리 5,040가지이고, 첫 질문은 무엇을 던지든 같습니다. 두 번째 질문부터는 결과에 맞춰, 맞은 숫자는 자리를 옮기거나 제자리에 두고 나머지는 새 숫자로 채우세요. 앞선 결과와 맞는 후보만 던져도 평균 5회 남짓이면 맞히고, 잘 고르면 3자리는 최악 6회, 4자리는 최악 7회까지 줄일 수 있습니다. 직접 해 보려면 숫자야구에서 3자리 모드부터 시작해 보세요.

참고 자료

도움이 됐다면 공유해 주세요

글쓴이

Bob

개발자로 일하면서 경제 지표와 시장 데이터를 직접 찾아보고 정리해 왔습니다. 공식 통계와 1차 자료를 기준으로, 처음 보는 사람도 흐름을 따라올 수 있게 씁니다.

운영 원칙 보기

게임 공략

27편
  1. 2048 모서리 전략과 뱀 모양 배열
  2. 지뢰찾기 1-2-1 패턴과 확률 계산
  3. 스도쿠를 찍지 않고 푸는 기본 기법
  4. 숫자야구는 몇 번 만에 맞힐 수 있을까지금 읽는 글
  5. 오목 열린 3과 4-3 공격, 첫 수와 금수 정리
  6. 솔리테어 잘 푸는 습관 다섯 가지
  7. 사과 게임, 짝부터 지울까 크게 묶을까
  8. 블록 쌓기, 4줄 한 번에와 연속 지우기 중 무엇이 점수가 클까
  9. 블록 끼우기에서 오래 버티는 배치
  10. 벽돌깨기, 패들 어디에 맞히느냐가 점수를 가릅니다
  11. 버블 팡, 터뜨리기보다 떨어뜨리기가 큰 이유
  12. 파닥파닥 비행, 틈 가운데보다 어디를 노려야 할까
  13. 과일 합치기에서 어디에 떨어뜨려야 점수가 오를까
  14. 보석 맞추기, 아래부터 맞추면 정말 점수가 오를까
  15. 동네 가게 키우기, 회수 기간 순서로 사면 얼마나 빨라질까
  16. 카드 짝 맞추기 어려움 판을 24번 안에 끝내려면
  17. 도시 방어, 탄두보다 얼마나 앞을 찍어야 할까
  18. 네모로직을 찍지 않고 푸는 줄 읽기 기법
  19. 가격 정하기 10일에서 이익이 가장 큰 가격 찾기
  20. 반응속도 테스트, 찍어서 누르면 왜 손해일까
  21. 길 건너기에서 오래 살아남는 법, 봇 2,000판으로 비교
  22. 색 순서 기억하기, 10단계를 넘기는 끊어 외우기
  23. 숫자 밀기 퍼즐 윗줄부터 맞추는 법과 마지막 두 장
  24. 스네이크, 먹이로 곧장 갈까 판을 돌까
  25. 우주 방어, 바깥 열부터 없애면 시간이 얼마나 벌릴까
  26. 탑 쌓기 퍼펙트 타이밍 오차와 층수
  27. 두더지 잡기, 점수는 몇 마리보다 연속이 가릅니다
  • 숫자야구

    스트라이크와 볼로 숨은 숫자를 맞혀요