Пусть x - количество солдатиков у Кости.
Из условия задачи мы знаем, что:
1. Когда Костя строит солдатиков в шеренги по 7, у него остается 3 лишних. Это значит, что x при делении на 7 дает остаток 3. Математически это можно записать так:
$$x \equiv 3 \pmod{7}$$
2. Когда Костя строит солдатиков в шеренги по 8, лишних не остается. Это значит, что x делится на 8 без остатка. Математически это можно записать так:
$$x \equiv 0 \pmod{8}$$
3. Количество солдатиков больше 30, но меньше 100: 30 < x < 100.
Теперь найдем число, которое удовлетворяет всем этим условиям. Так как x делится на 8, мы можем перебрать числа, кратные 8, в диапазоне от 30 до 100: 32, 40, 48, 56, 64, 72, 80, 88, 96.
Теперь проверим, какие из этих чисел при делении на 7 дают остаток 3:
* 32 / 7 = 4 (остаток 4) - не подходит
* 40 / 7 = 5 (остаток 5) - не подходит
* 48 / 7 = 6 (остаток 6) - не подходит
* 56 / 7 = 8 (остаток 0) - не подходит
* 64 / 7 = 9 (остаток 1) - не подходит
* 72 / 7 = 10 (остаток 2) - не подходит
* 80 / 7 = 11 (остаток 3) - подходит
* 88 / 7 = 12 (остаток 4) - не подходит
* 96 / 7 = 13 (остаток 5) - не подходит
Единственное число, которое удовлетворяет всем условиям, это 80.
Ответ: 80