Предварительным анализом можно сильно сократить количество вариантов.
Довольно легко получаются ограничения:
a = 0
k = 5
e ∈ {4, 9}
s ∈ {1, 2}
Это уже сокращает перебор в 2500 раз.
Чуть посложнее, но тоже вполне выводимо:
d + b + r ∈ {13, 14, 23, 24} => r ∈ {13 - d - b, 14 - d - b, 23 - d - b, 24 - d - b}, d + b ≥ 4
d + b + p ≥ 19 => p ∈ [19 - d - b, 9], 10 ≤ d + b ≤ 18
d > b > r => d ∈ [3, 9], b ∈ [max(2, 10 - d), min(d - 1, 18 - d)],
r ∈ [max(1, 13 - d - b), min(24 - d - b, b - 1)]
Получаем
int a = 0;
int k = 5;
for (int e = 4; e <= 9; e += 5) {
for (int s = 1; s <= 2; s += 1) {
for (int d = 3; d <= 9; d += 1) {
for (int b = max(2, 10 - d); b <= min(d - 1, 18 - d); b += 1) {
for (int r = max(1, 13 - d - b); r <= min(b - 1, 24 - d - b); r += 1) {
for (int p = 19 - d - b; p <= 9; p += 1) {