블랙잭
시간 제한2초메모리 제한1024 MB
플레이어의 카드 두 장과 딜러의 카드 한 장이 주어질 때, 기대 수익을 최대화하려면 카드를 더 받을지(HIT) 멈출지(STAND) 판단합니다.
문제
블랙잭은 한 벌 또는 여러 벌의 카드를 사용하는 인기 도박 게임이다. 이 문제는 카지노에서 허용되는 일부 동작을 빼고 단순화한 버전을 다룬다. 이 풀이에서 보듯, 이 게임은 카지노의 다른 도박 게임과 마찬가지로 플레이어의 기대 수익이 음수이다.
이 문제에서는 카드 한 벌을 사용한다. 각 값의 카드는 네 장씩 있으며, 값은 A(에이스), 2, 3, 4, 5, 6, 7, 8, 9, T(10), J(잭), Q(퀸), K(킹)이다. 2부터 9까지의 카드는 적힌 숫자만큼의 점수이고, T, J, Q, K는 각각 10점이다. 에이스는 플레이어가 1점 또는 11점 중에서 고를 수 있다. 목표는 21을 넘지 않는 범위에서 가장 높은 합을 얻는 것이다.
플레이어는 1달러를 건다. 플레이어에게 카드 두 장이, 카지노에게 카드 한 장이 배분된다. 플레이어는 카드를 한 장 더 받거나(hit) 멈출 수(stand) 있다. 카드를 더 받기로 하면 카드가 한 장 더 주어지고, 다시 같은 선택을 한다. 플레이어는 합이 21점에 이르거나 21점을 넘을 때까지 카드를 받을 수 있다. 합이 21점을 넘으면 플레이어는 즉시 진다. 에이스는 그렇게 계산해도 합이 21을 넘지 않을 때만 11점으로 세고, 그렇지 않으면 1점으로 센다.
플레이어의 합이 21 이하이면 카지노가 카드를 받는다. 카지노는 먼저 두 번째 카드를 받고, 합이 최소 17점이 될 때까지 카드를 더 받는다. 에이스 계산 방식은 플레이어와 같다. 예를 들어 카지노가 A와 5를 가졌다면 카드를 받아야 한다. 이때 T를 받으면 A, 5, T의 합이 16점이므로 한 장을 더 받아야 한다.
카지노의 합이 21점을 넘으면 플레이어가 이기고 건 돈의 두 배를 돌려받는다. 그렇지 않은 경우, 플레이어의 합이 카지노보다 높으면 플레이어가 이기고 건 돈의 두 배를 돌려받는다. 카지노의 합이 더 높으면 플레이어는 건 돈을 잃는다. 합이 같으면 무승부이며, 플레이어는 건 돈만 돌려받고 이익은 없다.
룰렛 같은 대부분의 카지노 게임과 달리 블랙잭에서는 플레이어가 카드를 더 받을지 멈출지 고를 수 있어서 결과에 영향을 줄 수 있다. 플레이어의 카드 두 장과 카지노의 카드 한 장으로 이루어진 조합마다, 나머지 카드가 덱에 무작위로 섞여 있다고 보고 평균 기대 수익을 최대로 하는 최적 전략이 있다. 이 전략을 찾아서 카드를 더 받을지 멈출지를 출력하라.
입력
입력 파일은 공백으로 구분된 세 개의 문자를 담고 있다. 앞의 두 개는 플레이어의 카드이고, 마지막은 카지노의 카드이다.
출력
HIT 또는 STAND를 출력한다.
힌트
첫 번째 예시에서 플레이어는 2와 3을 가져 합이 5점이다. 카드를 받지 않는 것은 의미가 없다. 플레이어의 점수는 올라가기만 하고, 21을 넘는 것은 불가능하기 때문이다.
두 번째 예시는 블랙잭에 관한 가장 놀라운 수학적 결과 중 하나이다. 플레이어가 하드 12(에이스를 11로 세지 않은 12점)이고 카지노가 5를 보이고 있을 때, 21을 넘을 확률은 작아 보이지만 멈추는 것이 더 낫다. 카드를 한 장 더 받으면 기대 수익은 달러이고, 멈추면 달러이다.