Например, посмотреть все
комбинаций...
Ну все-то зачем, все разумеется нет смысла перебирать, нам же надо только шесть первых в перестановке.
. Мы можем сократить и этот перебор, не генерируя те сочетания, которые заведомо дадут недобор (таких здесь не бывает, но помечтать стоит всегда) или перебор (вот тут мы много сэкономим: туз, король, дама, валет присутствовать не могут, как ТС уже заметил при ручном решении. К тому же мы можем перебирать только сочетания, где ценность карт невозрастает (как у ТС) или неубывает, домножая на соответствующее число перестановок. В итоге нам нужно будет перебрать сущие мелочи. И это простая автоматизация применения идей, возникших при ручном переборе.
Ещё мы можем применить динамическое программирование, считая число способов получить
очков картами с ценностями от 2 до
, назовём это
, используя очевидные рекуррентные соотношения.