Начни с конца. "Заложи" базовую стратегию, согласно которой игрок набирает всегда до тех пор
пока у него не станет 21. Посчитай MO при всех возможных вариантах у дилера. Отступи на шаг -
пусть теперь игрок набирает всегда до 20. Опять посчитай МО. И т. д. Таким образом найдешь
оптимальную стратегию против каждой карты дилера.
Даблы и сплиты просчитаешь после того, как "нащупаешь" основную стратегию.
Я, правда, поступил несколько иначе - сразу заложил "правильную" БС, чтобы "скакать" от нее в
разные стороны.
Лично у меня возникла проблема с алгоритмизацией сплитования. Вначале даже хотел сделать
рекурсию. Но потом стало лень искать "образец" (С++ 'ом пользуюсь второй раз в жизни) и в
результате обошелся без рекурсии.
Я уж было сам дописал свой симулятор, но пришло лето и ...